使用 facet_wrap 在 ggplot2 中绘制时间序列数据

bla*_*zej 6 r time-series ggplot2

我正在尝试绘制除以年份的 ts 数据以进行比较。

问题是我不知道如何强制 ggplot 跳过每个图上缺少的日期。

我的数据结构如下所示:

> head(pmWaw)
                 date         stacja pm25 pm10       season  year month
1 2014-01-01 00:00:00 MzWarNiepodKom  100  122 winter (DJF) 2014       1
2 2014-01-01 00:00:00 MzWarszUrsynow   63   68 winter (DJF) 2014       1
3 2014-01-01 00:00:00 MzWarTarKondra   NA   79 winter (DJF) 2014       1
4 2014-01-01 01:00:00 MzWarNiepodKom   69   77 winter (DJF) 2014       1
5 2014-01-01 01:00:00 MzWarszUrsynow   36   38 winter (DJF) 2014       1
6 2014-01-01 01:00:00 MzWarTarKondra   NA   90 winter (DJF) 2014       1
> tail(pmWaw)
                     date       stacja pm25 pm10       season  year month
52483 2015-12-30 22:00:00 MzWarAlNiepo   36   47 winter (DJF) 2015      12
52484 2015-12-30 22:00:00 MzWarKondrat   26   29 winter (DJF) 2015      12
52485 2015-12-30 22:00:00 MzWarWokalna   36   44 winter (DJF) 2015      12
52486 2015-12-30 23:00:00 MzWarAlNiepo   39   59 winter (DJF) 2015      12
52487 2015-12-30 23:00:00 MzWarKondrat   36   39 winter (DJF) 2015      12
52488 2015-12-30 23:00:00 MzWarWokalna   40   49 winter (DJF) 2015      12
Run Code Online (Sandbox Code Playgroud)

我想出的 ggplot2 代码是:

pmWaw %>%
    ggplot(aes(x=date, y=pm25)) + 
    geom_jitter(alpha=0.5) +
    geom_smooth() +
    facet_wrap( ~ year)
Run Code Online (Sandbox Code Playgroud)

结果图每年都有我想删除的空白,但不知道如何:

ggplot 结果

Kou*_*ndy 7

尝试scales = 'free_x'facet_wrap

像这样

pmWaw %>%
    ggplot(aes(x=date, y=pm25)) + 
    geom_jitter(alpha=0.5) +
    geom_smooth() +
    facet_wrap( ~ year, scales = "free_x")
Run Code Online (Sandbox Code Playgroud)