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

ggplot绘制Bellabeat数据集柱状图:如何设置柱子为不同纯色?

解决ggplot柱状图同色系深浅问题

问题根源在于ActivityDateWeekly的变量类型:如果它是日期/连续型变量,ggplot默认会为连续型的fill参数分配渐变色系,导致柱子只有同色系深浅变化。要实现不同纯色,需要将该变量转为离散型(因子)。

方案1:绘图时直接转换变量类型

修改代码,用factor()包裹fill参数里的ActivityDateWeekly:

ggplot(data=daily_activity_summary)+
  geom_col(mapping = aes(x=ActivityDateWeekly, y=Average_Total_Steps, fill=factor(ActivityDateWeekly)))

方案2:提前转换数据集变量类型

先调整数据集里的变量类型,再进行绘图:

# 将日期变量转为因子
daily_activity_summary$ActivityDateWeekly <- factor(daily_activity_summary$ActivityDateWeekly)

# 执行绘图
ggplot(data=daily_activity_summary)+
  geom_col(mapping = aes(x=ActivityDateWeekly, y=Average_Total_Steps, fill=ActivityDateWeekly))

可选:自定义纯色配色

如果需要指定特定颜色,可通过scale_fill_manual()手动设置:

ggplot(data=daily_activity_summary)+
  geom_col(mapping = aes(x=ActivityDateWeekly, y=Average_Total_Steps, fill=factor(ActivityDateWeekly)))+
  # 根据类别数量调整颜色列表
  scale_fill_manual(values = c("#FF0000", "#0000FF", "#008000", "#FFA500", "#800080"))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 11:49:55