Я хочу построить несколько временных отметок с помощью линейчатых баров, где 1 столбец указывает на целый час.
Моя проблема в том, что отметки центрированы по центру, и я хотел бы сместить их влевый конец столбцов .
Когда график не увеличен, это не такая проблема, но при увеличении появляется больше меток, и они будут неправильными.
РЕДАКТИРОВАТЬ: Мне нужна опция barmode = 'overlay'
, так как у меня также есть другие трассировки для построения, которые не включены в этот пример.
На рисунке ниже показан мой текущий и скрытый макет, и вот некоторые данные, которые нужно сделатьэтот сюжет.(Некоторые опции, которые я пробовал безуспешно, также включены в конфигурацию xaxis, но без комментариев).
library(plotly)
library(lubridate)
df <- data.frame(
ts = seq(as.POSIXct("2019-03-20 00:00:00"), by = "hour", length.out = 24),
val = sample(1:100, 24)
)
plot_ly() %>%
add_bars(data = df, x = ~ts, y = ~val) %>%
layout(dragmode = "select", autosize = TRUE, selectdirection = "h",
barmode = 'overlay',
bargap = 0.05,
xaxis = list(ticks = "outside",
type = "date",
# tickson="boundaries",
# offset=1800,
tickmode = "auto",
title = ""
)) %>%
config(scrollZoom = TRUE)