Shiny - Нажмите для следующего сюжета - PullRequest
0 голосов
/ 29 августа 2018
for (i in 1:4){
  v <- rnorm(50)
  plot(v, main=paste("Iteration ", i))
}

У меня есть код, который перебирает и создает график каждый раз, как указано выше. Как я позволю пользователю щелкнуть мышью, чтобы увидеть следующий график в блестящем приложении?

1 Ответ

0 голосов
/ 29 августа 2018

Используйте пакет slickR, чтобы сделать хорошее слайд-шоу.

library(shiny)
library(slickR)
library(svglite)

plots <- lapply(1:5, function(i){
  xmlSVG({plot(rnorm(50), main=paste0("Iteration ", i))}, standalone = TRUE)
})
#make the plot self contained SVG to pass into slickR 
plotsAsSVG <- sapply(plots, function(sv){
  paste0("data:image/svg+xml;utf8,",as.character(sv))
})


ui <- fluidPage(
  sidebarLayout(
    sidebarPanel(
      ####
    ),

    mainPanel(
      slickROutput("slickr", width="500px")
    )
  )
)

server <- function(input, output) {

  output$slickr <- renderSlickR({
    imgs <- plotsAsSVG
    slickR(imgs)
  })

}

# Run the application 
shinyApp(ui = ui, server = server)

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...