R ggplot绘制折线图线条为相近蓝色系如何修改代码设置不同颜色
ggplot2分组折线颜色相近问题解决
问题代码
ggplot(data = s2[1:39,], aes(x=Month, y=Users, group=Year, col=Year)) + geom_line(size=1.3) + geom_point(size=4.5) + geom_point(size=4.0, color='#FFFFFF') + ggtitle("Seoul_year") + scale_x_continuous(breaks=c(1,2,3,4,5,6,7,8,9,10,11,12)) + scale_y_continuous(labels = scales::comma)

问题现象
运行上述代码绘制折线图时,按年份分组的线条均为相近蓝色系,无法有效区分不同年份数据,目标效果参考如下:
修改方案
需要修改ggplot()内美学映射的颜色参数行。
问题原因:Year字段默认被识别为连续数值型变量,ggplot2对连续型颜色映射使用单色渐变规则,因此不同年份线条颜色差异极小。
将aes()中的col=Year改为col=factor(Year),将年份转为离散分类变量后,ggplot2会自动为不同年份分配差异明显的独立配色,修改后的首行代码为:
ggplot(data = s2[1:39,], aes(x=Month, y=Users, group=Year, col=factor(Year)))
如果需要自定义配色,可在原有代码末尾追加离散色标配置,例如使用高区分度的Set1调色盘:
+ scale_color_brewer(palette = "Set1")
内容的提问来源于stack exchange,提问作者YJP
相关产品推荐
相关产品推荐

