为了账号安全,请及时绑定邮箱和手机立即绑定

在同一张图上使用ggplot 2将两个变量绘制成线条

在同一张图上使用ggplot 2将两个变量绘制成线条

饮歌长啸 2019-06-04 16:39:36
在同一张图上使用ggplot 2将两个变量绘制成线条这是一个很新的问题,但说我有这样的数据:test_data <-   data.frame(     var0 = 100 + c(0, cumsum(runif(49, -20, 20))),     var1 = 150 + c(0, cumsum(runif(49, -10, 10))),     date = seq(as.Date("2002-01-01"), by="1 month", length.out=100)   )如何绘制两个时间序列?var0和var1在同一张图上date在x轴上,使用ggplot2?加分var0和var1不同的颜色,可以包括一个传说!我相信这很简单,但我找不到任何例子。
查看完整描述

3 回答

?
犯罪嫌疑人X

TA贡献2080条经验 获得超4个赞

对于少量变量,您可以自己手动构建绘图:

ggplot(test_data, aes(date)) + 
  geom_line(aes(y = var0, colour = "var0")) + 
  geom_line(aes(y = var1, colour = "var1"))


查看完整回答
反对 回复 2019-06-04
?
泛舟湖上清波郎朗

TA贡献1818条经验 获得超3个赞

一般方法是将数据转换为长格式(使用melt()从包装reshapereshape2)或gather()tidyr一揽子:

library("reshape2")library("ggplot2")test_data_long <- melt(test_data, id="date")  # convert to long formatggplot(data=test_data_long,
       aes(x=date, y=value, colour=variable)) +
       geom_line()



查看完整回答
反对 回复 2019-06-04
  • 3 回答
  • 0 关注
  • 1925 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信