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

使用ggh4x包的help_secondary函数能否添加点并修改双Y轴名称?

使用ggh4x::help_secondary添加散点并修改双Y轴名称

当然可以实现。以下是基于economics数据集的完整示例,同时添加散点并自定义两个Y轴的名称:

步骤1:加载依赖包

library(ggplot2)
library(ggh4x)

步骤2:绘制带散点的双Y轴图

ggplot(economics, aes(date)) +
  # 主Y轴:失业人数(线条+散点)
  geom_line(aes(y = unemploy), color = "darkblue") +
  geom_point(aes(y = unemploy), color = "darkblue", size = 0.7) +
  # 次Y轴:总人口(缩放后,线条+散点)
  geom_line(aes(y = pop / 50), color = "darkred") +
  geom_point(aes(y = pop / 50), color = "darkred", size = 0.7) +
  # 配置次Y轴:指定转换规则和轴名称
  help_secondary(
    sec.axis = sec_axis(
      trans = ~ . * 50,  # 与数据缩放逻辑反向,还原真实人口数
      name = "总人口数"
    )
  ) +
  # 设置主Y轴名称
  labs(y = "失业人数") +
  theme_bw()

关键说明

  • 添加散点:只需为每个Y轴系列额外调用geom_point(),保持与对应geom_line()一致的y映射即可,可通过颜色区分系列。
  • 修改轴名:
    • 主Y轴名称通过labs(y = "自定义名称")直接设置;
    • 次Y轴名称在help_secondary()的sec.axis参数中,通过sec_axis()的name参数定义,同时要保证trans参数与数据缩放的逻辑匹配(示例中把pop除以50适配主轴范围,所以次轴用~ . * 50还原数值)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 17:17:09