【问题标题】:The plotting function in R igraphR igraph 中的绘图功能
【发布时间】:2018-02-02 21:04:51
【问题描述】:

我使用 igraph 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 之间的几何距离的图形。

我的问题是:如何强制 igraph R 绘制所有几何距离相等的图形?

【问题讨论】:

    标签: r igraph


    【解决方案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))
    

    【讨论】:

    • 感谢您的回答。这就是我一直在寻找的。如何调整 xlim 参数?我认为通过试错法。彼得·威尔切克。
    • 不需要太多的反复试验。因为我使用了rescale=FALSE,所以它使用的是您在m 中设置的x 坐标,这些坐标从1 到4,您需要一点边框,所以0.5-4.5 很容易。
    • 感谢您的澄清。彼得·威尔切克
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-04-07
    • 2021-04-02
    • 2017-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多