R:在一张图中绘制多列
R: Plot multiple columns in one graph
我无法找到在一个图上绘制大量单独线条(列)的解决方案
数据具有以下形式:
Date V1 V2 ... V100
1/1/05 21 34 45
2/1/05 23 45 65
3/1/05 43 46 73
....
25/1/05 56 12 81
etc
我正在努力寻找在单个图上绘制这 100 条线 (V1-V100) 的最佳方法,似乎我缺少一个简单的解决方案。
如有任何帮助,我们将不胜感激。
谢谢
你说你有100行我有点害怕,这样做可能会伤害你的眼睛,所以要小心!
我能想出的最简单的不处理数据的方法是
matplot(df$Date, df, type="l"
使用 ggplot2
、dplyr
(为了可读性)和 zoo
包你可以做
df %>% select(matches("^V")) %>% zoo %>% autoplot
但是你没有得到正确的 x 尺度,我也没有花时间尝试让它正确 :)。
使用 tidyr
包,您还可以在绘图前重塑数据。
df2 <- df %>% gather("variable","value", -Date)
ggplot(df2, aes(x=Date, y=value, color=variable)) + geom_line()
这可能有变体,或者更好的方法 :)。
我无法找到在一个图上绘制大量单独线条(列)的解决方案
数据具有以下形式:
Date V1 V2 ... V100
1/1/05 21 34 45
2/1/05 23 45 65
3/1/05 43 46 73
....
25/1/05 56 12 81
etc
我正在努力寻找在单个图上绘制这 100 条线 (V1-V100) 的最佳方法,似乎我缺少一个简单的解决方案。
如有任何帮助,我们将不胜感激。
谢谢
你说你有100行我有点害怕,这样做可能会伤害你的眼睛,所以要小心!
我能想出的最简单的不处理数据的方法是
matplot(df$Date, df, type="l"
使用 ggplot2
、dplyr
(为了可读性)和 zoo
包你可以做
df %>% select(matches("^V")) %>% zoo %>% autoplot
但是你没有得到正确的 x 尺度,我也没有花时间尝试让它正确 :)。
使用 tidyr
包,您还可以在绘图前重塑数据。
df2 <- df %>% gather("variable","value", -Date)
ggplot(df2, aes(x=Date, y=value, color=variable)) + geom_line()
这可能有变体,或者更好的方法 :)。