#r #r-plotly
#r #r-plotly
Вопрос:
Новичок здесь, поэтому, пожалуйста, будьте нежны! 😉
Я использую plotly
in R для генерации некоторых фигур.
Код работает нормально, когда он запускается непосредственно в скрипте, но терпит неудачу, когда я пытаюсь вывести plotly
фигуру из функции.
Например, ввод следующего и запуск непосредственно отображает фигуру и работает нормально ( data
это список, содержащий множество разных параметров):
fig1 <- plot_ly(x = 0:100, y = data[[parameter]], type = 'scatter', mode = 'lines', line = list(color = 'rgba(191,191,191,0.2)'))
fig1
Мне нужно сделать много графиков, поэтому я создал следующую функцию:
Special_plot <- function(data, parameter){fig1 <- plot_ly(x = 0:100, y = data[[parameter]], type = 'scatter', mode = 'lines', line = list(color = 'rgba(191,191,191,0.2)'))
return(fig1)
}
Функция запускается, но когда дело доходит до отображения фигуры, я получаю сообщение об ошибке:
fig1 <- Special_plot(data, parameter)
fig1
Это сообщение об ошибке:
Error: Tibble columns must have consistent lengths, only values of length one are recycled:
* Length 0: Column `y`
* Length 101: Column `x`
Run `rlang::last_error()` to see where the error occurred.
Мне нужно обработать много фигур, и я хотел бы избежать ввода каждой по отдельности. Любая помощь приветствуется!
Комментарии:
1. Добро пожаловать в SO! Пожалуйста, предоставьте примерные данные,
dput
чтобы мы могли воспроизвести вашу проблему.
Ответ №1:
Я думаю, что вы x
выходите за рамки. Может быть, попробуйте изменить x
переменную, как показано ниже. Также 0
индекс отсутствует в R. Так что вам нужно начать с. 1
Special_plot <- function(data, parameter){ fig1 <- plot_ly(x = 1:length(data[[parameter]]), y = data[[parameter]], type = 'scatter', mode = 'lines', line = list(color = 'rgba(191,191,191,0.2)'))
return(fig1)
}
fig1 <- Special_plot(data, parameter)
fig1