表名而不是表显示 R 闪亮

  • 本文关键字:闪亮 显示 r shiny
  • 更新时间 :
  • 英文 :


我正在尝试在 R 闪亮中打印一个表,但是,它一直在打印表名而不是表。表名被保存为反应变量,然后放入渲染表中,但它只是继续打印表名。

如何解决这个问题?

server=function(input, output){
cord <- reactive({matrix(c(input$long,input$lat),nrow=1,ncol=2)})
ans=reactive({distHaversine(c(b[1,2],b[1,3]),c(cord()[,1],cord()[,2]))})
for (i in 1:15){
  distance=reactive({distHaversine(c(b[i,2],b[i,3]),c(cord()[,1],cord()[,2]))})
test=reactive({
  if(distance() < ans())
  {
  ans()=distance()
  name=reactive({CO[i,1]})
  }
})
}

data=reactive({name()})
output$table<-renderTable({data()})
}
shinyApp(ui=ui,server=server)

没有任何数据或任何想法,你真的想做什么,很难提供帮助,话虽如此,我试图通过推测你想做什么。我整理了一下并添加了req()

library(shiny)
ui <- fluidPage(renderTable("table"))
server <- function(input, output, session){
  v <- reactiveValues()
  cord <- reactive({
    req(input$long)
    req(input$lat)
    mc <- matrix(c(input$long,input$lat),nrow=1,ncol=2)
    v$ans <- distHaversine(mc(b[1,2],b[1,3]),c(mc[,1],mc[,2]))
    mc
  })
  data <- reactive({
    for(i in 1:15){
      distance <- distHaversine(c(b[i,2],b[i,3]),c(cord()[,1],cord()[,2]))
      if(distance < v$ans){
        v$ans <- distance
        return(CO[i,1])
      }
    }
  })
  output$table <- renderTable({
    data()
  })
}
shinyApp(ui=ui,server=server)

最新更新