我想绘制一个看起来像这样的时间序列:

我用什么绘图

qplot(Jahr, Wert, data=tu, group = Geschlecht, color = Altersgr) + facet_grid(Geschlecht ~ Land)

我的数据如下所示:
  Land   Altersgr Geschlecht Jahr  Wert
1   DE    < 20 J.          m 2000  13.0
2   DE  20-<65 J.          m 2000  25.7
3   DE     65+ J.          m 2000  70.1
4   DE  65-<80 J.          m 2000  44.2
5   DE     80+ J.          m 2000 213.5
6   BB    < 20 J.          m 2000  26.8

到目前为止一切都很好。但是我必须用一条线连接相应的点(相同的颜色)。我不知道该怎么做。如果我使用geom_line(),则会得到以下结果:

那不是我想要的...我只是觉得我忽略了一些东西...

有什么建议?谢谢大家的帮助。

最佳答案

您可能会发现使用“group” aes将帮助您获得所需的结果。例如:

tu <- expand.grid(Land       = gl(2, 1, labels = c("DE", "BB")),
                  Altersgr   = gl(5, 1, labels = letters[1:5]),
                  Geschlecht = gl(2, 1, labels = c('m', 'w')),
                  Jahr       = 2000:2009)

set.seed(42)
tu$Wert <- unclass(tu$Altersgr) * 200 + rnorm(200, 0, 10)

ggplot(tu, aes(x = Jahr, y = Wert, color = Altersgr, group = Altersgr)) +
  geom_point() + geom_line() +
  facet_grid(Geschlecht ~ Land)

产生图的地方:

关于r - 用ggplot2将点与线合并,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8592585/

10-12 17:48