如何解决在ggplot2中添加图例
Financial_Wealth.lq,Financial_Wealth.uq,Total_Wealth.lq,Total_Wealth.uq,time=seq(0,(sPar.dNN),1))
ggplot(data,aes(x=time)) +
geom_line(aes(y = Human_Capital.mean),color="red",size=1) +
geom_line(aes(y = Financial_Wealth.mean),color="goldenrod3",size=1) +
geom_ribbon(aes(ymin=Financial_Wealth.lq,ymax = Financial_Wealth.uq),alpha=0.4,fill="goldenrod3") +
geom_line(aes(y = Total_Wealth.mean),color="dodgerblue",size=1)+
geom_ribbon(aes(ymin=Total_Wealth.lq,ymax=Total_Wealth.uq),fill = "dodgerblue") +
scale_x_continuous(name = 'Age',breaks=(c(seq(0,4))))+
scale_y_continuous(name = 'Wealth Level',breaks = seq(0,100,10))+
theme(panel.grid.major = element_blank(),panel.grid.minor = element_blank(),legend.title = element_text(size=12,face="bold"),legend.text = element_text(size=12),axis.title = element_text(size=12),axis.text = element_text(size=10)) +
coord_cartesian(xlim = c(0,45),ylim = c(0,100),expand = TRUE)+
scale_fill_manual(name="Median",values=c("goldenrod3","red","dodgerblue"),labels = c("Financial Wealth","Human Capital","Total Wealth"))+
ggtitle('Optimal Wealth Development')
您可以将每个数据输入解释为等长数字的向量。有人可以告诉我为什么不显示图例吗?我需要做些什么?预先感谢:)我已经附上了它产生的image,以便您了解我要实现的目标。
解决方法
要添加图例,您需要在aes()
中指定一种美感。在这种情况下,请进行所有geom_line()
的呼叫,并将每个color=
放在aes()
内。在color=
中分配给aes()
的值将是图例中标签的文本:不是颜色。要分配颜色,您需要添加scale_color_manual()
并为values=
设置命名矢量。
请参阅以下有关应解决您问题的以下更改,尽管在没有数据集或reprex的情况下,我无法测试新代码的功能。
# original code
... +
geom_line(aes(y = Human_Capital.mean),color="red",size=1) +
geom_line(aes(y = Financial_Wealth.mean),color="goldenrod3",size=1) +
geom_line(aes(y = Total_Wealth.mean),color="dodgerblue",size=1)+
# new plot code
... +
geom_line(aes(y = Human_Capital.mean,color="Human Capital Mean"),size=1) +
geom_line(aes(y = Financial_Wealth.mean,color="Financial Wealth Mean"),size=1) +
geom_line(aes(y = Total_Wealth.mean,color="Total Wealth Mean"),size=1) +
scale_color_manual(values=c(
"Human Capital Mean"="red","Financial Wealth Mean"="goldenrod3","Total Wealth Mean"="dodgerblue"))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。