gpt4 book ai didi

r - 如何运行从 eventReactive 内部获取数据并在表中绘制的函数?

转载 作者:行者123 更新时间:2023-12-01 22:25:16 25 4
gpt4 key购买 nike

我是 shiny 的新手,遇到了一些麻烦,整天都在搜索,所以希望有人能帮助我。一旦用户选择了一个 Action 按钮(actionButton,在 UI 上),我希望服务器脚本调用我编写的函数(服务器中的 evenReactive)(我的函数,见下文),它使用 UI 中的输入项并获取正确的参数我需要运行 myfunction 并生成一个 n X2 数据矩阵,该矩阵将被绘制为一个表(服务器中的 renderTable,如下)。数据是一个 n X 2 矩阵。

我在下面有一些示例代码。这不是完整的代码,因此您不会看到带有我在函数中输入的 UI 或关联的服务器部件。但是,这是我要修复的部分。我希望没关系。我不需要 renderText,但是当我取出它时出现错误。抱歉格式化。复制和粘贴改变了一点。

library(shiny)

ui <- shinyUI(fluidPage
(column(4,actionButton("gobutton", "Run"),verbatimTextOutput("ntext1")),
column(4, DT::dataTableOutput("table",width = "75%"))))

library(shiny)

shinyServer(function(input, output, session)


ntext1 <- eventReactive(input$gobutton, {
if (input$gobutton==1){
data=myfunction(input$checkbox,input$dateRange)}
})


output$ntext1 <- renderText({ntext1()})

output$table <- DT::renderDataTable(DT::datatable({
data
})
))

myfunction <-function(All,date1,date2,source_cd,tran_cd,airline_list,mag_level) {
print(All); print(date1); print(date2); print(source_cd);print(tran_cd);print(airline_list);print(mag_level)

setwd("C:/Users/TRomano/Documents/Projects/TrendAnalysis/Data")
data = read.csv("Airlines.csv",header = TRUE)
return(data)
}

最佳答案

对于这类问题,我喜欢使用旨在以 react 方式存储数据的reactiveValues()

这是一个简单的应用程序(单个应用程序,未拆分为服务器和用户界面),它演示了我认为您正在尝试做的事情

library(shiny)
library(DT)

ui <- shinyUI(
fluidPage(
column(width = 4,
actionButton("gobutton", "Run")
column(width = 4,
DT::dataTableOutput("table",
width = "75%"))))

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

rv <- reactiveValues()
rv$data <- NULL

observe({ ## will 'observe' the button press

if(input$gobutton){
print("here") ## for debugging
rv$data <- myfunction() ## store the data in the reactive value
rv$data
}
})

output$table <- DT::renderDataTable({
## The data has been stored in our rv, so can just return it here
rv$data
})
})

myfunction <- function(){
data <- data.frame(id = c(1,2,3),
val = letters[1:3])
return(data)
}

shinyApp(ui, server)

关于r - 如何运行从 eventReactive 内部获取数据并在表中绘制的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35925731/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com