Как скорректировать ось масштаба времени для ggplot гистограммы

Я работаю с кадром данных, где один из столбцов состоит из POSIXct значения даты и времени. Я пытаюсь вывести гистограмму на печать этих меток времени использование ggplot2 но у меня есть две проблемы:

  1. Я не знаю, как установить binwidth в geom_histogram(). Я хотел бы установить каждое мусорное ведро на день или неделю. Я попытался обеспечить объект difftime, но я получаю ошибку. Я также попробовал binwidth=1 но R просто зависает.

  2. Как я устанавливаю пределы в scale_x_time()? Единственным путем я мог добраться, это для работы было путем преобразования моего POSIXct использование меток времени as.Date().

11
задан Sven Hohenstein 22 January 2014 в 19:44
поделиться

1 ответ

  1. Ширина интервала измеряется в секундах, поэтому для интервала в неделю установите binwidth = 7 * 24 * 60 * 60 .
  2. Пределы могут быть заданы как вектор из 2 объектов POSIXct.

Пример:

y<-as.POSIXct('1970/01/01')+cumsum(rnorm(100,mean=24*60*60,sd=24*60*60))
p<-qplot(y,binwidth=7*24*60*60,fill=I('steelblue'),col=I('black'))
p<-p+scale_x_datetime(major="1 week",
                      minor="1 days",
                      format="%e/%m/%Y",
                      limits=c(as.POSIXct('1970/02/01'),
                               as.POSIXct('1970/03/31')))
print(p)
21
ответ дан 3 December 2019 в 05:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: