将 ggraph 用于 igraph 网络时,我收到“Error in '$<-.data.frame'('*tmp*', ”x“, value = numeric(0)) : ”

When using ggraph for an igraph network, I get "Error in `$<-.data.frame`(`*tmp*`, "x", value = numeric(0)) : "

提问人:Kristen 提问时间:11/5/2023 更新时间:11/5/2023 访问量:10

问:

我正在处理以自我为中心的网络数据。我首先创建了一个像这样的 egor 对象:

egor.obj <- egor::threefiles_to_egor(egos= ego.df, 
                                     alters.df= alter.attr.all, 
                                     edges= alter_ties, 
                                     ID.vars = list(ego = "networkCanvasEgoUUID", 
                                                    alter = "networkCanvasUUID", 
                                                    source = "networkCanvasSourceUUID", 
                                                    target = "networkCanvasTargetUUID"))

然后将其转换为igraph网络列表,如下所示:

gr.list <- egor::as_igraph(egor.obj)

我试图只绘制其中一个网络。所以我用 egoID 只拉出一个:

(gr.examp <- gr.list[["0012601c-c2b1-4881-ab25-b2a115f4530c"]])

然后尝试将其可视化:

set.seed(607)
ggraph(gr.examp) + 
  geom_edge_link() + 
  geom_node_point(size=5, color="blue") + 
  theme_graph(base_family = 'Helvetica') 

它给了我以下输出和错误:

用作默认布局 新名称: • -> • -> • -> • -> 新名称: • -> • -> • -> • -> (, “x”, value = numeric(0)) 中的错误: 替换有 0 行,数据有 20 行stressfromfrom...1toto...2fromfrom...4toto...5fromfrom...1toto...2fromfrom...4toto...5$<-.data.frame*tmp*

你能帮我弄清楚为什么它不起作用吗?

我已经检查了图表是否为空。它有 10 个顶点和 20 条边,当我用 plot(gr.examp) 做一个简单的绘图时,它看起来很好。

R iGraph GGRAPH

评论


答: 暂无答案