我使用igraph R来显示化合物。在这种方法中,节点对应于原子,边缘对应于原子之间的键。这种代表的化学分子被称为分子图或H耗尽图。例如,代表2-甲基丁烷,简称2mb,(碳骨架由五个原子组成的简单有机分子)我使用以下R代码:
.then(onFulfilled).catch(onRejected)
为了可视化这个分子图,我使用以下矩阵作为布局m:
molecular.graph.2mb = graph.formula(1-2,2-3,3-4,2-5)
此矩阵包含图形顶点的坐标。然后我绘制这个图:
m = matrix(c(1,0,2,0,3,0,4,0,2,1), nrow=5, byrow=TRUE).
我得到了图形,其中顶点2和5之间的几何距离大于v1和v2,v2和v3之间的几何距离以及v3和v4。
我的问题是:如何强制igraph R绘制所有几何距离相等的图形?
答案 0 :(得分:1)
这样做的主要技巧是设置参数rescale=FALSE
并调整xlim
。单独这样做会使节点非常小,所以我也需要调整节点大小。我想这就是你要找的东西。
library(igraph)
## Your graph
molecular.graph.2mb = graph.formula(1-2,2-3,3-4,2-5)
m = matrix(c(1,0,2,0,3,0,4,0,2,1), nrow=5, byrow=TRUE)
## Modified plot
plot(molecular.graph.2mb, layout=m, rescale=FALSE,
vertex.size=30, xlim=c(0.5,4.5))