- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要在 r 中使用 ggraph 生成一个网络。我想要的是通过权重变量(或节点大小)调整边缘宽度。有谁知道我该怎么做?非常感谢。
示例代码如下:
library(ggraph)
library(igraph)
data=data.frame(w1=rep('like', 5),
w2 = c('apple', 'orange', 'pear','peach', 'banana'),
weight= c(2,3,5,8, 15))
data %>%
graph_from_data_frame() %>%
ggraph(layout = "fr") +
geom_edge_link(alpha = .25) +
geom_node_point(color = "blue", size = 2) +
geom_node_text(aes(label = name), repel = TRUE)
最佳答案
是的,在大多数 geom_edge_*
中,您可以使用 width
aes
来做到这一点。此外,您可以使用 scale_edge_width
根据加权变量微调最小/最大宽度。请参阅下面的两个示例。
此外,我认为与 ggforce
有关的审美存在问题(这也给我带来了麻烦)。确保您已更新到最新版本的 ggraph
和 ggforce
。
library(ggraph)
library(igraph)
data=data.frame(w1=rep('like', 5),
w2 = c('apple', 'orange', 'pear','peach', 'banana'),
weight= c(2,3,5,8, 15))
第一个有默认权重
data %>%
graph_from_data_frame() %>%
ggraph(layout = "fr") +
geom_edge_link(alpha = .25,
aes(width = weight)) +
geom_node_point(color = "blue", size = 2) +
geom_node_text(aes(label = name), repel = TRUE)+
theme_graph()+
labs(title = 'Graph with weighted edges',
subtitle = 'No scaling')
使用scale_edges_width
设置范围。注意 - scale_edges
* 可以接受多个参数。
data %>%
graph_from_data_frame() %>%
ggraph(layout = "fr") +
geom_edge_link(alpha = .25,
aes(width = weight)) +
geom_node_point(color = "blue", size = 2) +
geom_node_text(aes(label = name), repel = TRUE)+
scale_edge_width(range = c(1, 20))+ # control size
theme_graph()+
labs(title = 'Graph with weighted edges',
subtitle = 'Scaling add with scale_edge_width()')
关于r - 如何在r中的ggraph网络中按权重调整边的宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56173310/
我在安装 ggraph 时遇到了一些问题,我尝试了不同的方法,例如:How to install GGRAPH package to the latest R (v.3.3.2)或者 R on OSX
我有一个多波的友谊网络数据集。我想绘制在波浪中持续存在的友谊,并使每个图的节点保持相同的坐标。我能够使用 ggraph 和 graphlayouts 的动态布局来使节点在四波中保持在相同的位置,但我想
正在阅读 Julia Silge 和 David Robinson 的 Tidytext Mining with R - https://www.tidytextmining.com/nasa.htm
当使用 ggraph 时,有没有办法加粗边缘颜色的图例线?我试图覆盖但无济于事。这是一个例子: library(tidyverse) library(igraph) library(ggraph) s
正在阅读 Julia Silge 和 David Robinson 的 Tidytext Mining with R - https://www.tidytextmining.com/nasa.htm
我想使用分面绘制图形,其中面板之间的边缘不同。面板按字母顺序自动排序(按照 ggplot 中的惯例)。一个简单的例子: library(igraph) library(ggraph) g <- mak
我是 ggraph 的新手,为了让图例正确显示节点的颜色,我费了一番功夫。我有以下示例数据集: nodes % as_tbl_graph() ggraph( graph, layout = 'fr'
我正在使用 tidygraph 和 ggraph 绘制网络。有没有办法选择性地操作节点?具体来说,尺寸和颜色,分开。 # example data rstat_nodes % mu
在 ggraph 中,如果绘图是径向的,无论是否使用 repel=T,标签都会变得拥挤。 有没有办法使标签具有交互性或允许旋转图形以读取标签? library(ggraph) mtcarsDen <-
我试图用 ggraph 绘制一个网络,我想在图形周围添加一个圆圈,边缘和节点位于圆圈内。 使用以下代码绘制圆圈效果很好(改编自 Draw a circle with ggplot2 ) gg_circ
我正在尝试以圆形布局生成带有标记节点的交互网络图。我拼凑了一个功能脚本,显示了我想要的与 ggraph 的连接,但我无法弄清楚如何相对于圆形排列中的位置定位节点标签,因此它们不会与任何连接线重叠地点。
我想弄清楚如何在 ggraph 中使用经纬度布局但似乎无法通过语法工作。考虑使用从 iris 修改的一些数据的这个 reprex数据集: data <- structure(list(Sepal.Le
我在理解 ggplot2 和 ggraph 在分面方面的区别时遇到了一些困难。考虑以下数据: library(igraph) library(ggraph) library(ggplot2) df
我正在尝试制作一个示例 self 网络图,但使用“填充”为节点着色对我来说不起作用。这可能是一个微不足道的问题,但我无法找出问题所在。这是我的代码: library(tidyverse) librar
我正在尝试制作一个示例 self 网络图,但使用“填充”为节点着色对我来说不起作用。这可能是一个微不足道的问题,但我无法找出问题所在。这是我的代码: library(tidyverse) librar
我有一个小部件表;每个小部件都有唯一的 ID、颜色和类别。我想在 ggraph 中制作此表的 circlepack 图,该图在类别上分面,层次结构类别 > 颜色 > 小部件 ID: 问题是根节点。在此
我对 R 非常陌生,我需要 ggraph 库,但无法从 rstudio 控制台安装它。这是一条消息: Warning in install.packages : package ‘ggraph’ is
我是一名优秀的程序员,十分优秀!