我有一个简单的问题。我是新的使用iGraph,我试图通过tklplot绘图。该图具有以下特征:
Vertices: 856 Edges: 675 Directed: TRUE
我只想在图表中塑造不同种族群体,这些民族群体当然是V(g)$ethnic
个顶点的属性。
我遇到了square
的问题,但确实有错误
在向下的线条中,我只是变成圆形顶点。我的想法是用属性V(g)$ethnic
区分顶点,如果我记得它,没有问题,但是情节输出不正确,并且R没有报告主要问题
如下
V(g)$color <- "green"
E(g)$color <- "black"
V(g)$nodesize=degree(g)*0.5
V(g)[V(g)$ethnic=="Mestizo"]$shape <- "rectangle"
V(g)[V(g)$ethnic=="Saraguro"]$shape <- "circle"
tkplot(g, layout=layout.kamada.kawai, edge.color=E(g)$color,
edge.arrow.size=0.3, vertex.label.dist=0.3, vertex.color=V(g)$color,
vertex.size=V(g)$nodesize, vertex.shape=V(g)$shape)
问候
弗拉基米尔
答案 0 :(得分:1)
根据igraph.vertex.shapes function documentation,tkplot
不支持形状,但仅限于plot.igraph
:
请注意,当前的顶点形状实现是实验性的 它可能会在未来发生变化。目前实现了顶点形状 仅适用于plot.igraph。
答案 1 :(得分:-1)
究竟什么不能正确绘图? iGraph的指数偏移一。试试这个,看看它是否有所作为:
wc1 <- which(V(g)$ethnic=="Mestizo") - 1
wc2 <- which(V(g)$ethnic=="Saraguro") - 1
V(g)$shape[wc1] <- "rectangle"
V(g)$shape[wc2] <- "circle"