создание графика из редактируемого набора данных rshiny rhandsontable

#r #graph #shiny #rhandsontable

#r #График #блестящий #rhandsontable

Вопрос:

Возможно ли создать график из редактируемой таблицы? У меня есть таблица, которую я редактирую с помощью rHandsontable, и я хотел бы показать на вкладке график с использованием моих последних отредактированных данных. Есть ли способ это сделать?

Например, допустим, у меня есть : mydata<-data.frame(num=seq(1,10), square=seq(1,10)^2)

Пока мой код выглядит так :

 library(shiny)
library(shinydashboard)
library(rhandsontable)


ui <- dashboardPage(
  dashboardSidebar( 
    sidebarMenu(
      menuItem("Preview", tabName="previsualisation", icon=icon("table")),
      menuItem("Graphs", tabName="graphs", icon=icon("chart-bar"))
    )
  ),
  dashboardBody(
    tabItems(
      tabItem(tabName = "previsualisation", 
              basicPage(mainPanel(rHandsontableOutput("preview")))
      ),
      tabItem(tabName = "graphs") #where I would like the graph to appear
    )
  )
)


server <- shinyServer(function(input, output, session) {


  previous<-reactive({mydata}) 
  
  test_changes<- reactive({
    if(is.null(input$preview)){return(previous())}
    else if(!identical(previous(),input$preview)){
      mytable<-as.data.frame(hot_to_r(input$preview))
      mytable<-mytable[1:nrow(mydata),]

      mytable[, "square"]<-mytable$num^2
      mytable
    }
  })
  
  output$preview <- renderRHandsontable({rhandsontable(test_changes())})

})

shinyApp(ui, server) 
  

Затем, если я изменяю номер num столбца, square столбец автоматически изменяется.

Есть ли способ после внесения этих изменений сгенерировать график с x = num, y = square ?

Спасибо за вашу помощь!

Комментарии:

1. Ваш пример кода не работает previous и precedent не определен

2. Действительно, это была ошибка. Я отредактировал его, но он не должен работать 🙂