library(patentsview)
library(dplyr)
library(visNetwork)
library(magrittr)
library(stringr)
library(knitr)
library(tidyverse)
library(readxl)
library(igraph)
#creating query for fetching Tencent's patent data
tencent_query <-
with_qfuns(
and(
contains(assignee_organization = "aeye"),
contains(patent_type = "utility")
)
)
#querying Tencent's patent data
tencent_utility <- search_pv(
query = tencent_query,
endpoint = "patents",
fields = c("patent_number", "patent_title", "cited_patent_number", "citedby_patent_number","assignee_organization", "patent_num_cited_by_us_patents"),
all_pages = TRUE
)
#unnesting Tencent's patent data
tencent_lst <- unnest_pv_data(tencent_utility$data, pk = "patent_number")
pat_title <- function(title, number) {
temp_title <- str_wrap(title)
i <- gsub("\\n", "<br>", temp_title)
paste0('<a href="https://patents.google.com/patent/US', number, '">', i, '</a>')
}
#visualization
edges <-
tencent_lst$cited_patents %>%
na.omit() %>%
semi_join(x = ., y = ., by = c("cited_patent_number" = "patent_number")) %>%
set_colnames(c("from", "to"))
nodes <-
tencent_lst$patents %>%
mutate(
id = patent_number,
label = patent_number,
title = pat_title(patent_title, patent_number)
)
visNetwork(
nodes = nodes, edges = edges, height = "1280px", width = "100%",
main = "AYEY's Patent Portfolio"
) %>%
visEdges(arrows = list(to = list(enabled = TRUE))) %>%
visIgraphLayout()