При анимации с использованием функции plot_ly () в R сгенерированная скорость занимает слишком много времени.
t1<-Sys.time()
##################################
library(plotly)
library(dplyr)
library(htmlwidgets)
##################################
df <- data.frame('a' = c(1:10000), 'b'= c(1:10000), 'c'=c(1:10000),'d'=c(1:10000),
'e'=c(1:10000),'f'=c(1:10000),'g'=c(1:10000), 'h'=c(1:10000))
##################################
p <- plot_ly() %>%
add_trace( data = df,
x= ~a,
y= ~b,
z= ~c,
opacity = 0.5,
type = 'scatter3d', mode = 'lines',
line = list( color= "#DD443C", dash="solid", width = 8),
name ="test_Speed")
t2<-Sys.time()
#plotly
t2-t1
saveWidget(as_widget(p), 'test.html')
t2<-Sys.time()
#html
t2-t1
В приведенной выше задаче кода задача завершается за 1,6 секунды.Однако для кода с добавленной ниже переменной кадра требуется более трех минут.Кроме того, график не открывается должным образом при работе в веб-браузере.
t1<-Sys.time()
##################################
library(plotly)
library(dplyr)
library(htmlwidgets)
##################################
df <- data.frame('a' = c(1:10000), 'b'= c(1:10000), 'c'=c(1:10000),'d'=c(1:10000),
'e'=c(1:10000),'f'=c(1:10000),'g'=c(1:10000), 'h'=c(1:10000))
##################################
p <- plot_ly() %>%
add_trace( data = df,
x= ~a,
y= ~b,
z= ~c,
frame = ~d,
opacity = 0.5,
type = 'scatter3d', mode = 'lines',
line = list( color= "#DD443C", dash="solid", width = 8),
name ="test_Speed")
t2<-Sys.time()
#plotly
t2-t1
saveWidget(as_widget(p), 'test.html')
t2<-Sys.time()
#html
t2-t1
Функция plot_ly обрабатывается быстро, но я вижу, что saveWidget занимает много времени.Я хочу вывести график, который анимирует в кадре данных с 200 000 строк.Можно ли вывести график в формате, отличном от HTML?(Анимация возможна) Или есть способ ускорить сохранение виджета?Мне нужна помощь.