我正在使用ggraph绘制不同预算期(财政年度)的tidygraph网络图。在这种情况下,节点是政府部门。政府部门与部长的关系随着政府的来临而变化。每个预算期的网络图显示了当前的行政命令。我要做的是显示部门预算在不同预算期间如何变化。这表明政府的工作重点是什么。
使用gagaph中的facet_edges(),我可以绘制每个预算期的网络。但是,我无法通过每个时期(方面)的预算分配来确定节点的大小。如果删除facet_edges,也无法为网络图提供标准布局。我试图在此处重现虚拟数据的问题:
require(tidyverse)
edge <- data.frame(from = c(sample(1:10, 5, replace=TRUE), sample(1:10, 5, replace = TRUE), sample(1:10, 5, replace=TRUE),sample(1:10, 5 , replace=TRUE)),
to = c(sample(11:20, 5, replace=TRUE), sample(11:20, 5, replace = TRUE), sample(11:20, 5, replace=TRUE),sample(11:20, 5 , replace=TRUE)),
period = c(2010:2013,2010:2013,2010:2013,2010:2013,2010:2013)) %>%
filter(from != to)
node <- edge %>%
select(from,to) %>%
gather(key, id, c(to, from)) %>%
select(-key)
budget <- data.frame(FY_2010 = c(seq(100,134,2)) * 1.1,
FY_2011 = c(seq(110,144,2)) * 0.9,
FY_2012 = c(seq(120,154,2)) * 1.2,
FY_2013 = c(seq(100,134,2)) * 1.4)
nodes <- bind_cols(node,budget)
require(tidygraph)
net <- igraph::graph_from_data_frame(edge, vertices = nodes, directed = F)
net <- as_tbl_graph(net)
require(ggraph)
ggraph(net)+
geom_edge_link()+
geom_node_point(aes(size = FY_2010))+
theme_graph()+
facet_edges(〜句点)
因此,此图绘制的是带有边线的图,但我不知道如何按FY_2010:FY_2013中的值来调整节点的大小。每个方面的节点数量应略有不同。