带有几个变量的R / ggplot2中的图形

时间:2016-05-16 21:16:11

标签: r ggplot2

我需要帮助R中的图表与ggplot2,因为在尝试了几件事之后,我不知道该怎么做。我有以下数据框:

df <- data.frame(
    TITLE = c("GRADUATE IN TITLE 1", "GRADUATE IN TITLE 2", "GRADUATE IN TITLE 3", 
         "GRADUATE IN TITLE 4", "GRADUATE IN TITLE 5"),
    X2011 = c(1, 2, 3, 4, 5),
    X2012 = c(3, 4, 5, 1, 2),
    X2013 = c(1, 2, 5, 3, 4),
    X2014 = c(1, 3, 4, 2, 5),
    X2015 = c(5, 1, 2, 4, 3)
)

我想要的是制作一张包含所有&#34; TITLE&#34; Y轴中的每个年份(2011年,2012年,2013年......)在X轴上的值,以及对应于&#34; TITLE&#34;的每一行,绘制一条水平线以便交叉点每年的对应于该年份列的值的位置&#34; TITLE&#34;,因此图表上的所有行都会根据与此列对应的值上下移动。

1 个答案:

答案 0 :(得分:3)

ggplot喜欢它,当你的数据是&#34; tidy&#34;时,每行应代表一个要绘制的点。将数据转换为更适合绘图的格式的一种简单方法是使用reshape2包将其融合。

library(ggplot2)
ggplot(reshape2::melt(df), aes(variable, TITLE, group=value)) + geom_line()

然后,您可以使用标准行geom并使用groups=来连接不同类别的值。

这会产生

enter image description here