【问题标题】:Plot Multiple columns against one column in R在 R 中针对一列绘制多列
【发布时间】:2015-09-18 16:00:51
【问题描述】:

第一次来!

我有一个数据集(60k obs. of 86 个变量)变量 86 是一个时间变量,其余的只是随机数。我正在尝试根据时间变量绘制每一列,前 85 列。如果需要,时间变量可以从数据帧中分离出来。

我希望用折线图绘制每一个,因为它是一个时间序列数据集,每个都应该在自己的图中。这可以在ggplot2中完成吗?

谢谢 贾斯汀

【问题讨论】:

标签: r ggplot2


【解决方案1】:

创建一些示例数据。这里我只使用 3 列 (x, y, z) 的 100 个观测值,外加一个时间列。

dat = data.frame(x=rnorm(100), y=rnorm(100), z=rnorm(100), time=1:100)

使用reshape2::melt将你的数据转换成ggplot喜欢的格式:

library('reshape2')
dat_melted = dat_melted = melt(dat, id.vars='time')

然后您可以将它们绘制在构面中:

library('ggplot2')
ggplot(dat_melted, aes(time, value)) + 
  geom_line() + 
  facet_wrap(~variable)

【讨论】:

    猜你喜欢
    • 2016-04-28
    • 2021-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-11
    • 1970-01-01
    相关资源
    最近更新 更多