R Plotly rangeselector autoselect "1W" - PullRequest
       7

R Plotly rangeselector autoselect "1W"

1 голос
/ 23 января 2020

Прямо сейчас я получил график, построенный на графике в R со следующим диапазоном выбора:

                xaxis = list(
                rangeselector = list(
                    buttons = list(
                        list(
                            count = 7,
                            label = "1W",
                            step = "day",
                            stepmode = "backward"),
                        list(
                            count = 1,
                            label = "1M",
                            step = "month",
                            stepmode = "backward"),
                        list(
                            count = 3,
                            label = "3M",
                            step = "month",
                            stepmode = "backward"),
                        list(
                            count = 6,
                            label = "6M",
                            step = "month",
                            stepmode = "backward"),
                        list(
                            count = 1,
                            label = "1J",
                            step = "year",
                            stepmode = "backward"),
                        list(
                            count = 2,
                            label = "2J",
                            step = "year",
                            stepmode = "todate"))),

                #rangeslider = list(type = "date")
                FALSE
            ),

Current Rangeselector

Я пытаюсь автоматически выбрать " 1W ", но я не могу найти код для этого в документации Plotly.

Возможно ли это сделать?

1 Ответ

1 голос
/ 23 января 2020

Я не думаю, что можно выбрать значение по умолчанию, но если у вас add range = с той же датой, что и в предпочтительном диапазоне, результат будет тот же.

Вот полный код, если самая последняя дата сегодня. Если нет, вы можете просто сделать что-то вроде range = max(as.Date(df$date))-7, max(as.Date(df$date))), если ваш фрейм данных называется "df", а даты указаны в столбце "Date".

xaxis = list(
  range = c(Sys.Date()-7, Sys.Date()),
  rangeselector = list(
    buttons = list(
      list(
        count = 7,
        label = "1W",
        step = "day",
        stepmode = "backward"),
      list(
        count = 1,
        label = "1M",
        step = "month",
        stepmode = "backward"),
      list(
        count = 3,
        label = "3M",
        step = "month",
        stepmode = "backward"),
      list(
        count = 6,
        label = "6M",
        step = "month",
        stepmode = "backward"),
      list(
        count = 1,
        label = "1J",
        step = "year",
        stepmode = "backward"),
      list(
        count = 2,
        label = "2J",
        step = "year",
        stepmode = "todate"))),

  #rangeslider = list(type = "date")
  FALSE
),
...