【问题标题】:Plotting a data.frame in R, without getting a blank figure [duplicate]在R中绘制一个data.frame,没有得到一个空白图[重复]
【发布时间】:2020-09-03 08:11:35
【问题描述】:

我是 R 新手,我必须绘制一个包含 50 个时间序列的 data.frame,列名称是每个系列的名称,行名称是参考日期;对于每个系列,我有 373 个观察值。 data.frame 被称为 data

我尝试使用 plot(data),但我得到错误 plot.new() 中的错误:数字边距太大

所以我这次尝试使用ggplot(data) 没有收到错误,但它返回一个空白的白色图形:

我正在尝试在 x-axixs 和 data.frame 的每一列(所以每个时间序列)上创建一个带有日期(所以行名)的图表,作为与 y 轴上的水平线不同。

提前致谢!

【问题讨论】:

标签: r dataframe ggplot2 time-series


【解决方案1】:

您的 ggplot 调用是空白的,因为您没有指定几何对象。此外,为了让 ggplot 有效地工作,您的数据应该是“长”格式。假设您已经加载了核心 tidyverse,并且您的 50 个时间序列是第 2 列到第 51 列,

data2 <- data %>%
  pivot_longer( 2:51, names_to="series_name", values_to="series_value" )

现在假设你的第一列名为Date,你可以得到你想要的情节如下

data2 %>%
  ggplot( aes(x=Date) ) +
  geom_line( aes(y=series_value, group=series_type) )

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-03
    • 2019-10-05
    • 1970-01-01
    • 1970-01-01
    • 2020-06-19
    • 2020-10-29
    相关资源
    最近更新 更多