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

能否在R中绘制目标百分比样式图表,有哪些可用的相关R包?

R绘制百分比类图表的实现方案

你所需的这类百分比格式图表,可通过以下R包实现:

  • 通用方案:ggplot2
    作为R生态最常用的可视化工具,支持自定义绘制各类百分比堆叠条形图、瀑布图、百分比分类对比图等,直接适配你现有的百分比数据源,操作流程如下:
    1. 先用tidyr包的pivot_longer()函数将宽格式数据转为长格式
    2. 绘制百分比堆叠条形图时,在geom_bar()中设置position = "fill"即可自动生成百分比纵轴,无需额外转换数值
    3. 如需添加百分比标签,搭配geom_text()设置position = position_fill(vjust = 0.5)即可实现标签在对应区块居中显示
      参考代码片段:
    # 安装依赖包(首次使用执行)
    install.packages(c("ggplot2", "tidyr", "scales"))
    # 加载包
    library(ggplot2)
    library(tidyr)
    library(scales)
    
    # 示例数据,替换为你自己的数据集即可
    df <- data.frame(
      分类 = c("类别1", "类别2", "类别3", "类别4"),
      分组A占比 = c(20, 35, 15, 40),
      分组B占比 = c(80, 65, 85, 60)
    )
    # 转换为长格式数据
    df_long <- pivot_longer(df, cols = -分类, names_to = "分组", values_to = "百分比")
    # 绘图
    ggplot(df_long, aes(x = 分类, y = 百分比/100, fill = 分组)) +
      geom_bar(stat = "identity", position = "fill") +
      geom_text(aes(label = paste0(百分比, "%")), position = position_fill(vjust = 0.5)) +
      scale_y_continuous(labels = percent_format()) +
      labs(y = "总占比")
    
  • 特定场景适配包
    • 如果要绘制百分比瀑布图,可使用waterfalls包,直接传入百分比数值即可生成对应效果
    • 如果要绘制百分比桑基流转图,可使用ggalluvial包,适配分类维度的占比流转展示
      所有上述包都可以通过install.packages()直接安装,你可以根据你的具体图表需求调整对应的绘图参数即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 02:27:00