我确信这已经完成了很多次,但显然我没有使用正确的术语进行搜索。
我在R中有一些时间序列数据,如下所示:
country year deaths region global.region
1 Afghanistan 2006 0.095830775 Asia & Pacific Global South
2 Afghanistan 1994 0.127597064 Asia & Pacific Global South
3 Algeria 2000 0.003278038 Arab States Global South
4 Algeria 2001 0.003230578 Arab States Global South
5 Algeria 1998 0.006746176 Arab States Global South
6 Algeria 1999 0.019952364 Arab States Global South
...
基本上,我想按国家/地区绘制所有线条,但我希望它们按地区着色(并在图例中标注)。我希望在不尝试建立平均模型的情况下查看数据中的一些区域趋势(部分原因是因为我想看到异常值,部分原因是很多国家都缺少数据,我认为一个好的区域模型可能对我来说很难在这一点上,最好只是误导。)
因此,最后我将为布基纳法索,阿尔及利亚和科特迪瓦绘制单独的线条,但它们都将是橙色的。我将为阿富汗,巴基斯坦和伊朗分别划线,但他们都是蓝色的。
最好用ggplot2完成,因为那是我正在学习的绘图库。但也许在R中有一种标准的方法可以在所有(大多数)绘图库中运行?
编辑:最终解决方案:团体审美。 (谢谢@baptiste)
qplot(data=df, x=year, y=deaths, color=region, group=country) +
geom_line() +
xlab('Year') + ylab('Deaths per 100,000') + ggtitle('Deaths per 100,000 by country (WHO)')
这使得:
答案 0 :(得分:1)
与您想要的结果略有不同,但在这里......
ggplot(df, aes(x = year, y = deaths)) +
geom_line(aes(color = country, linetype = region))