Получите приятные перерывы в ggplot2 с bdscales - PullRequest
0 голосов
/ 18 июня 2020

Со вчерашнего дня я изо всех сил пытаюсь построить простые данные с временными рядами без рабочих дней (это не в данных), таблица представляет собой тиббл, но даже преобразованная во фрейм данных проблема остается той же.

Мне удалось сделать это с ежедневными данными (формат даты), но для минут и часов это просто не в моих руках. Моя цель - просто получить разрывы по датам и изменение часа между перерывами для одного графика и изменение для минут на другом графике. Я использую библиотеку bdscales, поскольку scale_x_date автоматически добавляет выходные

enter image description here

Example of plot that work and where I want the same breaks,

введите описание изображения здесь

Формат даты - POSIXct (но мне нужен только час и другая минута графика)

вот мой код:

ggheure <- ggplot(data = Tablevolheure, aes(x = completeheure, y = Volumesomme)) +
  scale_y_continuous(labels = function(x) format(x, scientific = FALSE)) +
  scale_x_bd(business.dates = Tablevolheure$completeheure, 
             max.major.breaks = 20,
             max.minor.breaks = 10) + 
  geom_line()

воспроизводимый код:

library(tsibble)
library(lubridate)
library(bdscale)
library(ggplot2)

date <- seq(as.POSIXct('2013/01/01'), as.POSIXct('2013/02/01'), by="1 hour")
volume <- runif(length(date),0,1)*1000
data <- tsibble(date,volume)
names(data) <- c("date","volume")

ggheure <- ggplot(data = data, aes(x = date, y = volume)) +
  scale_y_continuous(labels = function(x) format(x, scientific = FALSE)) +
  scale_x_bd(business.dates = data$date, 
             max.major.breaks = 12) + 
  geom_line()
ggheure
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...