我正在使用iGraph在R中制作网络图。我首先使用tkplot()绘制它,以便我可以手动重新定位一些节点。然后我捕获新坐标,然后在绘图函数中插入这些坐标以重新绘制图形以及其他调整(更改节点的不透明度)。
问题是即使使用tkplot.coords坐标,第二个图形看起来也不像tkplot。相反,一些箭头出现在边缘的中间而不是末端,并且节点紧密地聚集和重叠,即使tkplot不是这种情况。有关如何使plot()函数完全模仿使用tkplot()生成的绘图的任何建议?
我正在使用R Studio,所以我想知道是否存在转换问题。
我的简化代码如下:
Net1 <- graph.data.frame(myedgedata, vertices=nodeslist, directed=TRUE)
g <- graph.adjacency(get.adjacency(Net1), weighted = TRUE)
E(g)$weight <- E(g)$weight+1
tkplot(g)
coords <- tkplot.getcoords(1)
plot(g, edge.width=E(g)$weight, vertex.color = adjustcolor(nodeslist$colors, alpha=.5), layout=coords)