Мне дан сюжетный объект, содержащий n вспомогательных участков, и я хочу добавить в него диапазонный слайдер.Я делаю это, используя код
p<- layout(p, xaxis = list(rangeslider = list(type = "date")))
Однако мне нужно сохранить возможность масштабирования оси Y на всех вспомогательных участках.Я знаю, что могу сделать это, снова изменив макет следующим образом:
p<- layout(p,
yaxis = list(fixedrange = F),
yaxis2 = list(fixedrange = F),
yaxis3 = list(fixedrange = F),
...)
Однако, так как количество графиков меняется, мне нужен программный способ сделать это.Обратите внимание, что объект plotly генерируется с помощью ggplotly, и поэтому у меня нет доступа к отдельным подсюжетам для передачи там параметров макета.
Я попытался передать список в макет, но это не похожедля получения правильного результата:
layoutlist <- list(yaxis = list(fixedrange = F), yaxis2 = list(fixedrange = F), yaxis3 = list(fixedrange = F), ...)
p<- layout(p, layoutlist)
не возвращает ошибку, но также не применяет параметры макета должным образом.
Я также попытался использовать расстановку кавычек (!!) для решения проблемыно я не смог заставить его работать.
Вот пример кода для репликации:
(эта часть не может быть изменена)
subplots_list <- list()
for(i in 1:5){
subplots_list[[i]] <- plot_ly()
}
p<- subplot(subplots_list, nrows = 5, shareX = T)
Ожидаемый результат
p<- p %>% layout(xaxis = list(rangeslider = list(type = "date")))
p<- p %>% layout(
yaxis = list(fixedrange = F),
yaxis2 = list(fixedrange = F),
yaxis3 = list(fixedrange = F),
yaxis4 = list(fixedrange = F),
yaxis5 = list(fixedrange = F)
)
Заранее спасибо за помощь.