ggplot polar_coord лучше выводит текст - PullRequest
1 голос
/ 13 марта 2020

У меня есть данные в фрейме данных times.posix. Поскольку это данные о времени, я хочу представить их в виде круговой гистограммы. Мой код такой:

ggplot(times.posix) +
  geom_histogram(aes(x = pct.hour(dropoff.posix) ), bins = 24, color = 'black', fill = 'blue') +
  scale_x_continuous(breaks = 0:23, labels = paste( (11:(11+11) )%%12 + 1, c(rep('AM',12), rep('PM', 12) ) ) ) +
  ggtitle('Dropoff time frequency') +
  coord_polar()

и мой график выглядит так:

image

Фактический geom_hist заканчивается нормально, но текст вокруг него странно разнесен - надписи кажутся нормальными, начиная с 12:00, но к 11:00 они уже позади. Кто-нибудь знает, как это исправить?

1 Ответ

1 голос
/ 13 марта 2020

Вы можете заставить «12 PM» равняться «12 AM», явно обрезая значения: замените x = pct.hour(dropoff.posix) на x = floor(pct.hour(dropoff.posix)).

Вот данные, смоделированные через times.posix <- data.frame(Time = 24 * rbeta(1e3, 1.4, 1.1)), отображаемые с вашим кодом (с указанием усеченных значений Time):

Figure

...