Я пытаюсь сделать коробку с двумя разными заливками с непрерывными данными о дате в течение многих лет (но только один бар в год). мои данные выглядят довольно просто:
date, number, type
2007-06-07 2 tot
2007-06-09 3 tot
2007-06-12 0 gps
Поэтому я импортировал свои данные и отформатировал дату с помощью функции te as.Date
, и это сработало. Я изменил все свои NA на 0. Затем я попробовал следующий код:
p1 <- ggplot(sights, aes(x =date, y = number, group=date, fill = type)) +
geom_boxplot(alpha=0.7)
p1
У меня получился такой сюжет: участок
Итак, я попробовал такие коды, как:
p1 <- p1+scale_x_date(breaks = as.Date(c("2005", "2006", "2007","2009", "2010", "2011", "2012", "2013", "2014","2015", "2016","2017","2018")))
p1
но это не работает. Было бы здорово получить помощь! Я тоже хотел бы сделать то же самое через месяц;)
Обновлено: у меня были некоторые выбросы примерно в 2101 году. Я удалил их, и теперь я получаю: сюжет2
о господи у меня есть! всегда убивают мелочи.. позвольте мне проверить, как это меняется..
Я удалил выбросы, но я все еще не получаю график, который ищу. я отредактировал пост новым
Этот результат близок к тому, что вы хотите?
sights %>%
mutate(year = format.Date(date, "%Y")) %>%
ggplot(aes(x = year, y = number, fill = type)) +
geom_boxplot(alpha=0.7)
о, это хорошо! Я думал о том, чтобы вручную добавить еще один столбец только с годом, но с format.date он работает хорошо! Только без комментария группы =год :) Спасибо!
У вас в полных данных есть случай с неверной датой (>2100)?