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

如何在lessR PieChart环形图中组合显示计数与百分比数值标签

lessR PieChart 同时展示计数与百分比标签实现方法

问题现状

lessR包的PieChart()(别名PC())内置values参数仅支持单独选择三类标签:

  • "input":显示分组计数
  • "%":显示分组百分比
  • "prop":显示分组比例
    直接给values传入向量、拼接字符串都无法实现多内容组合标签,无法达到类似15 (20%)的「计数+百分比」展示效果。

可行方案

提前计算各分组的计数和百分比,拼接为目标格式的标签向量,通过labels参数传入即可,同时关闭内置的values标签避免冲突。

完整示例代码

# 加载lessR包
library(lessR)
# 读取包内置Employee示例数据
data <- rd("Employee")

# 计算每个部门的人数、对应占比
dept_count <- as.vector(table(data$Dept))
dept_pct <- round(prop.table(dept_count) * 100, 0) # 第二个参数为百分比小数位数,0即取整
# 拼接为目标格式标签
custom_labs <- paste0(dept_count, " (", dept_pct, "%)")

# 绘制环形图
PieChart(Dept, data = data,
         fill = "viridis",
         values = NULL, # 关闭内置数值标签
         labels = custom_labs, # 传入自定义标签
         hole = 0.6, # 设置空心大小实现环形图,普通饼图设为0即可
         main = NULL)

调整说明

  • 若需要保留1位/2位百分比小数,修改round()函数第二个参数为1/2即可
  • 该方法计算的分组顺序和PieChart默认分类排序完全一致,不会出现标签和扇区错位的问题
  • 标签的字体、大小、颜色可以通过labels_cex、labels_color等参数直接调整,和内置标签的调整方式一致

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.01 02:54:36