问题标签 [ggraph]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
393 浏览

r - ggraph - 格式化图形边缘

我试图通过以下演示来感受 ggraph 包:https ://www.r-bloggers.com/plotting-trees-from-random-forest-models-with-ggraph/ 。

我想将边缘类型更改为肘形并尝试替换geom_edge_link()为,geom_edge_elbow()但这会返回错误“FUN 中的错误(X[[i]],...):找不到对象'方向'”。

查阅手册,我猜这是因为对象“图形”属于 igraph 类而不是树状图,但我不能确定,想知道是否有人可以提出解决方法?

以下是应用到 mtcars 数据集的上述链接中的演示代码:

运行此程序会引发错误:'FUN 中的错误(X[[i]],...):找不到对象'方向'。

0 投票
1 回答
386 浏览

r - 如何将自循环添加到 ggraph?

我正在尝试对学生的原籍省以及他们去哪里上学进行网络分析。我正在使用 ggraph。该图没有显示自循环(即在他们所在的省份上学的学生)。我该如何添加?这是我的代码:

0 投票
1 回答
842 浏览

r - Ggraph节点颜色以匹配边缘颜色

是否可以让 ggraph 绘制与连接边缘颜色相同颜色的节点颜色?我已经尝试手动为 ggraph 提供边缘和节点的颜色,但没有任何运气。这似乎是一件相当微不足道的事情,但我找不到任何方向。我的问题有点类似于这个问题,但我想将我的节点着色为与它们的出度边缘相同。

在此处输入图像描述

0 投票
2 回答
511 浏览

r - 使用circlepack在ggraph中分面时隐藏根节点

我有一个小部件表;每个小部件都有唯一的 ID、颜色和类别。我想在类别的各个方面制作circlepack此表的图表,ggraph层次结构类别>颜色>小部件ID:

所需输出的屏幕截图

问题是根节点。在这个 MWE 中,根节点没有类别,因此它有自己的方面。

以 NA 为根的输出屏幕截图

如果我完全省略了根节点,ggraph则会发出警告,指出该图具有多个组件并仅绘制第一个类别。

如果我将根节点分配给第一个类别,则第一个类别的图会缩小(因为整个根节点也被绘制成图形,同时scales="free"根据需要显示所有其他类别)。

将根分配给第一类的输出屏幕截图

我也尝试添加filter = !is.na(category)aesofgeom_node_circledrop = Tto facet_nodes,但这似乎没有任何效果。

作为最后的手段,我可​​以保留根节点的构面,但使其完全空白(使类别名称为空字符串,将圆圈颜色更改为白色)。如果根节点 facet 总是最后一个,那么无关紧要的东西就不太明显了。但我很想找到一个更好的解决方案。

带有空白根面的输出屏幕截图

我愿意使用 以外的东西ggraph,但我有以下技术限制:

  • 我需要用小部件的实际颜色填充每个小部件的圆圈。我相信这排除了circlepackeR

  • 我在每个图表中需要两个级别(颜色和小部件 ID);我相信这排除了packcircles+ ggiraph,如此所述。

  • 这些图表是 Shiny 应用程序的一部分,我正在使用此解决方案添加工具提示(每个小部件的 ID;这必须是工具提示而不是标签,因为在真实数据集中,圆圈很小,ID 非常长)。我相信这与为每个类别制作单独的图表并用grid.arrange. 我从来没有使用过d3,所以我不知道这种方法是否可以修改以适应分面和工具提示。

编辑:另一个包含闪亮部分的 MWE:

0 投票
2 回答
6241 浏览

r - 如何控制ggraph中的节点颜色?

我有一个网络图,我想为边缘着色以匹配它们各自的节点。这在情节中相当直截了当igraph,但我更喜欢这样做,ggraph因为我喜欢包装提供的其他美学。

似乎对ggraph;中的节点颜色几乎没有控制。而边缘颜色被广泛覆盖。

我的问题是:如何将我的边缘与使用自定义函数着色的节点匹配,以便“离开”节点的每个边缘的颜色与其节点相同。这应该可以帮助人们更轻松地跟踪通过网络的流程。一个更普遍的问题是:ggraph 如何在美学论点之外分配颜色。我的问题类似于我之前在这里提出的另一个问题,但反过来(将边缘与节点匹配),在此处找到。

这是一个可重现的示例:

在此处输入图像描述

0 投票
1 回答
343 浏览

r - 如何在ggraph R中翻转x和y轴

第一个图像是图形的手绘(使用 MS word)图像。第二张图片是尝试使用 ggraph 生成相同的图。

在此处输入图像描述

以下是我在给定节点边连接时用于自动绘制图形的代码(代码来自此线程)。我想移动 ggraph 的 x 和 y 轴,如手绘图所示(图 1)。将 x 轴编号从上到下反转,并将 y 轴移动到顶部。我该怎么做?

我尝试使用 scale_x_reverse() 但它会扭曲布局并给出警告“'x' 的比例已经存在。为 'x' 添加另一个比例,它将替换现有的比例。”。我也尝试了 scale_y_continuous 中的 position = "top" 选项,它也没有任何区别。

0 投票
0 回答
173 浏览

r - R中的圆包图

我试图circlepack从我的数据框中绘制一个图,但我没有成功。

我想为每个人画一个圆圈,例如 S003,其中包含属于该人的类类型。大小表示每个人的每个班级发生的次数。

一直在尝试使用这两个线程 如何在 rhttps://www.r-graph-gallery.com/315-hide-first-level-in-circle-packing/的 ggraph 库中使用圆形包布局,但不能做。

0 投票
1 回答
344 浏览

r - 为什么我应该在 R 中使用 ggraph() 和 set.seed()?

我最近一直在学习使用tidytext. 今天,我遇到了以下情况:

我已经将该set.seed()功能与其他功能一起使用,例如sample(). 但是在这里,我不明白为什么ggraph要与set.seed(). 谁能帮我?

0 投票
1 回答
485 浏览

r - 将颜色渐变应用到 ggraph 的 `geom_conn_bundle`

语境

ggraph用来在圆形树状图中排列节点(树的叶子),然后在一些节点之间添加连接(使用分层捆绑geom_conn_bundle):

这很好地显示了一个几乎透明的树状图和skyblue.

问题/期望的输出

不过,我想要的是连接的方向由颜色渐变指示(即从绿色开始,慢慢变为红色),而不是仅以一种颜色(天蓝色)显示连接。如何使用 R 和 ggraph 实现这样的颜色渐变geom_conn_bundle

以下来自Holten (2006)的摘录可以作为我希望连接外观的示例:

在此处输入图像描述

0 投票
1 回答
448 浏览

r - 向 tidygraph 对象添加属性列

我试图弄清楚如何将属性数据添加到专门用于绘图目的的 tidygraph 对象。我似乎无法弄清楚如何获取与变量级别关联的变量,当我创建 tidygraph 对象以供稍后在绘图中使用时保留它。所以在下面的代表中,我想按高度着色,但这种方法让我无法理解

任何人都可以推荐任何添加height到这个情节的好方法吗?

reprex 包(v0.2.1)于 2019 年 3 月 11 日创建