我使用字形R来可视化化合物。在这种方法中,节点对应于原子,边对应于原子之间的键。这种表示的化学分子被称为分子图或H-耗尽图。例如,为了表示2-甲基丁烷,简称为2mb (碳骨架由五个原子组成的简单有机分子),我使用以下R代码:
molecular.graph.2mb = graph.formula(1-2,2-3,3-4,2-5)为了可视化这个分子图,我使用下面的矩阵m作为布局:
m = matrix(c(1,0,2,0,3,0,4,0,2,1), nrow=5, byrow=TRUE). 这个矩阵包含我的图的顶点的坐标。然后我画出这个图:
plot(molecular.graph.2mb, layout=m). 我得到了一个图,其中顶点2和5之间的几何距离大于v1和v2,v2和v3以及v3和v4之间的距离。
我的问题是:如何强制图R绘制所有几何距离都相等的图?
发布于 2018-02-04 06:16:15
执行此操作的主要技巧是设置参数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))

https://stackoverflow.com/questions/48590849
复制相似问题