我在 ggplot2 中的 geom_line() 发生了什么?

What is happening with my geom_line() in ggplot2?

我不是R方面的专家,但是我多次使用ggplot2并且从来没有遇到过任何问题。不过,这次我无法在我的图表中绘制线条,我也不知道为什么(不过应该很简单)。

例如:

   def.percent    period
1    5.0657339 1984-1985
2    3.9164528 1985-1986
3    -1.756613 1986-1987
4    2.8184863 1987-1988
5    -2.606311 1988-1989

我要编码:

ggplot(plot.tab, aes(x=period, y=def.percent)) + geom_line() + geom_point() + ggtitle("Deforestation rates within Properties")

但是当我 运行 它时,它只是绘制没有线条的点。它还给了我这条消息:

geom_path: Each group consist of only one observation. Do you need to adjust the group aesthetic?

这不是真正的错误,但我不知道如何绘制线条...有什么想法吗?

你的 x 轴 (period) 是一个因子而不是数字,所以它没有连接它们。您可以通过在美学中设置 group = 1 来解决此问题,这会告诉 ggplot2 将它们全部分组到一行中:

ggplot(plot.tab, aes(x = period, y = def.percent, group = 1)) +
    geom_line() +
    geom_point() +
    ggtitle("Deforestation rates within Properties")