R语言中ggplot柱状图颜色无法修改的问题求助
问题原因及解决办法
- 核心问题:你的代码没有将
sentiment变量映射到fill美学属性,scale_fill_manual是用来控制填充色映射的,没有映射目标的话,这个参数根本不会生效,geom_bar就会用默认灰色填充。 - 解决步骤:
- 在
ggplot的aes函数里添加fill=sentiment,让每个sentiment类别对应不同的填充色; - 此时
scale_fill_manual就能正确指定每个类别的颜色了。
- 在
修正后的代码:
p<-ggplot(DATA.df, aes(x=sentiment, fill=sentiment)) + geom_bar(stat="count")+theme_minimal()+ scale_fill_manual(values=c('red', 'purple', 'pink')) p
额外说明:如果只是想给所有柱子设置统一颜色,不需要用scale_fill_manual,直接在geom_bar里写geom_bar(stat="count", fill="你的颜色")即可,但你需要3种不同颜色,必须把x轴变量映射到fill属性。
内容的提问来源于stack exchange,提问作者user1986315
相关产品推荐
相关产品推荐

