一个ggplot图中的不同线型

时间:2017-05-01 16:18:45

标签: r ggplot2 line

我想在ggplot2中创建一个包含不同行类型的折线图。

我试过这样:

library(ggplot2)
library(tidyr)

head(a)
a <- read.table(text = "m     A    B    C
1 Okt  9.250 14.75475  5.94375
2 Nov 10.343 16.21625  7.88050
3 Dez 14.885 25.81775 10.13550
4 Jan 15.566 25.17125 11.70950
5 Feb 15.619 22.53175 11.80400", header = TRUE)
a$m <- factor(a$m, levels = c("Okt", "Nov", "Dez", "Jan", "Feb"))

xy <- gather(a, key = variable, value = value, -m)

ggplot(xy, aes(x = m, y = value, color = variable)) +
  geom_line(aes(linetype=variable))

但情节根本没有显示任何线条。我希望A线是实线,B和C是虚线。

1 个答案:

答案 0 :(得分:0)

您需要在(let ((a (list 0))) (set-car! a 9) (car a)) ;; => 9

中设置group = variable
aes

这是必要的,因为您的ggplot(xy, aes(x = m, y = value, color = variable, group = variable)) + geom_line(aes(linetype=variable)) x轴是一个因子,而不是连续变量,这意味着m不知道连接它们。