R Dygraphs Stepchart - connectSeparatedPoints запрещает пошаговую диаграмму - PullRequest
0 голосов
/ 18 сентября 2018

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

Я могу построить второй временной ряд примерно так, как я хочу, используя опцию connectSeparatedPoints = FALSE, однако это, похоже, запрещает рендеринг других серий 'как пошаговых графиков.

Нужно ли обрабатывать это, составляя каждый отдельный график и вызывая параметры форматирования каждый раз? Или я что-то упускаю очевидное?

Если я закомментирую эту опцию, степплот хорошо отрисовывается для первичного ряда, но объединяет точки для редкого ряда и, как ни странно, делает это с диагональными линиями, а не в виде пошаговой диаграммы.

3 скриншота прилагаются - для параметров connectSeparatedPoints = TRUE / FALSE и когда он закомментирован.

Невозможно опубликовать данные, поскольку они являются собственностью.

Мой дополнительный вопрос: можно ли назвать все столбцы одной серии одним вызовом dygraph, а затем вызвать только отдельные серии для последней серии, или это все или ничего?

Спасибо за помощь.

Код ниже fwiw - не очень сложный.

dygraph_stepchart2<-function(input.df, ts.vec, col.vec){
  plot.df<-xts(input.df, order.by = ts.vec)
  dygraph(plot.df) %>%
    dyRangeSelector() %>%
    dyOptions(sigFigs=6) %>%
    dyOptions(colors = col.vec) %>%
    dyOptions(stepPlot = TRUE) %>%
    #dyOptions(connectSeparatedPoints = TRUE) # Comment this line out and the stepcharts work for the 'dense' time series
    dyLegend(width=800, hideOnMouseOut=TRUE)
}

connectSeparatedPoints = TRUE

connectSeparatedPoints = False

connectSeparatedPoints = Commented Out

...