You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何调整R语言ggforce包中geom_link函数绘制连线的大小

geom_link连线大小调整方案

你当前代码中把size参数映射到了stat(index),实现的是连线从起点到终点的大小渐变效果,对应不同需求可以用以下几种方案调整:

方案1:保留渐变效果,整体缩放连线粗细

直接对stat(index)乘以自定义缩放系数即可,系数越大整体连线越粗:

library(ggplot2)
library(ggforce)

ggplot(df) +
  geom_link(aes(x = x, y = y, xend = x2, yend = y2, alpha = 0.1, 
                # 这里的3是缩放倍数,可根据需求自行调整
                size = stat(index) * 3), 
            lineend = "round") +
  # 不需要展示size、alpha图例可以直接隐藏
  guides(size = "none", alpha = "none")

方案2:不需要渐变,设置固定粗细

如果不需要沿连线的大小变化,把size参数放到aes()外部设置固定值即可:

library(ggplot2)
library(ggforce)

ggplot(df) +
  geom_link(aes(x = x, y = y, xend = x2, yend = y2, alpha = 0.1), 
            # 2为固定线宽,数值越大线越粗,可自行调整
            size = 2,
            lineend = "round") +
  guides(alpha = "none")

方案3:自定义渐变的大小范围

如果需要精确控制渐变的最小、最大线宽,可以搭配scale_size_continuous()设置范围:

library(ggplot2)
library(ggforce)

ggplot(df) +
  geom_link(aes(x = x, y = y, xend = x2, yend = y2, alpha = 0.1, 
                size = stat(index)), 
            lineend = "round") +
  # 第一个参数是起点线宽,第二个是终点线宽,可自行调整
  scale_size_continuous(range = c(0.5, 6)) +
  guides(size = "none", alpha = "none")

内容的提问来源于stack exchange,提问作者Hamza Ferchichi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 15:24:03