2017-02-03 2 views
3

Я пытаюсь построить данные ts, деленные на год для сравнения.данные временных рядов данных в ggplot2 с facet_wrap

Проблема: я не могу понять, как заставить 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 

ggplot2 код, который я придумал это:

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

Результирующий участок имеет пробелы в каждом году которые я хотел бы удалить, но может «т выяснить, как:

ggplot result

ответ

1

Попробуйте 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") 
+0

он работал с: чешуя = "free_x", спасибо! – blazej

+0

За исключением ответа, если он работает, поэтому другим людям легко искать рабочее решение. – Koundy

+0

Я сделаю это. Через 4 минуты. – blazej

Смежные вопросы