【问题标题】:R: Understanding the ggnetwork package and its usage with ggplotR:了解 ggnetwork 包及其与 ggplot 的用法
【发布时间】:2021-03-19 19:07:54
【问题描述】:

我正在学习使用 ggplot2、igraph 和 ggnetwork 绘制网络图。我正在研究这个网页:

https://cran.r-project.org/web/packages/ggnetwork/vignettes/ggnetwork.html#geom_edges

但是,为了了解这些功能的工作原理,我有一些非常基本的问题。在标题“geom_edges”下的示例中,代码为

ggplot(n, aes(x = x, y = y, xend = xend, yend = yend)) 
    + geom_edges(aes(linetype = type), color = "grey50") 
    + theme_blank()

我不明白

  • 它是如何实际使用语句中的ggnetwork 包的。是隐含的吗?怎么样?
  • x = x, y = y, xend = xend, yend = yend 是什么意思? x、y、xend 和yend 是什么?
  • 参数 x、y、xend、yend 与数据对象 n 有什么关系?

非常感谢!

【问题讨论】:

  • geom_edges 是从ggnetwork 包导出的函数,因此如果您没有加载该包,代码将无法运行。 aes 中的 xy 参数将您的两个变量映射到绘图的 x 和 y 坐标。由于边缘需要起点和终点坐标,您还需要xendyend 来指定这些。由于您可能在图中有很多边,因此这些参数都是矢量化的,因此您可以将数据框 n 中的 4 列传递到映射到 xyxendyend ,因此数据框中的每一行都可以在图上给出一条边。
  • 嗨。似乎您正在寻找ggplot2 的介绍。在ggplot2 标签下列出了一些教程:stackoverflow.com/tags/ggplot2/infoggnetwork 在这里添加了geom_edges

标签: r ggplot2 igraph ggnetwork


【解决方案1】:

正如之前的评论者所说,示例代码中的xxendyyend 参数用于在它们之间绘制节点和边,其工作方式与geom_segment 中的完全相同。 ggnetwork 建立在 ggplot2 的基础上,因此需要对该软件包的一些了解才能使用它。

该软件包在ggplot2 之上带来了诸如geom_edges 之类的功能:请参阅its documentation 以获取完整的功能列表。

【讨论】:

    猜你喜欢
    • 2011-10-07
    • 1970-01-01
    • 1970-01-01
    • 2017-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-17
    • 1970-01-01
    相关资源
    最近更新 更多