ggplot2堆叠面积图图例标题设置问题及代码求助
解决ggplot2堆叠面积图的图例标题修改问题
我来帮你搞定这个图例标题的问题!首先先给你的代码做个小优化——在ggplot的aes()里不需要重复写agegenderdata$,因为你已经指定了data=agegenderdata,直接写列名就可以啦,这样代码更简洁易读。
接下来,你的堆叠面积图同时用了fill和colour两个美学映射,且都绑定了Age Category,所以图例是合并在一起的。要修改这个合并后的图例标题,有两种简单的方法:
方法一:通过labs()直接设置
在labs()里同时指定fill和colour的标题(因为两个映射对应同一个图例,设置成相同标题就能保持图例合并):
# 优化后的基础代码 plot1 <- ggplot(data = agegenderdata, aes(x = Year, y = `Obesity Inpatients`, fill = `Age Category`, colour = `Age Category`)) + geom_area() # 修改图例标题并添加其他标签 plot1 + labs(x = "Year", y = "Obesity Inpatients", title = "graph", fill = "年龄分组", # 替换成你想要的图例标题 colour = "年龄分组") # 和fill保持一致,确保图例合并
方法二:使用guides()统一设置
如果觉得在labs()里写两次麻烦,可以用guides()函数统一指定:
plot1 + labs(x = "Year", y = "Obesity Inpatients", title = "graph") + guides(fill = guide_legend(title = "年龄分组"), colour = guide_legend(title = "年龄分组"))
另外小提示:如果想让堆叠区域的视觉效果更好,可以给geom_area()加个alpha参数调整填充透明度,或者size参数调整边框粗细,比如geom_area(alpha = 0.8, size = 0.5),这样堆叠层次和边框会更清晰。
内容的提问来源于stack exchange,提问作者Saif
相关产品推荐
相关产品推荐

