我想在Server.r中的UI.r中使用选定的变量

时间:2019-01-20 09:40:05

标签: r shiny

我在UI.R中有一个checkboxinput,它使用从server.R中下载的数据集,但是当我尝试在Server.R中使用一组列时,我的checkboxinput从布局中消失了。

代码的最后一部分显示了我试图在响应式中包含的内容

#Server.R
shinyServer(function(input, output) {



# 3 wczytywanie danych 
dataIn <- reactive({
    inFile <- input$fileInPath

    if (is.null(inFile)) {
        return(NULL)
    }
    read.table(file=inFile$datapath,sep=";",dec=",",header=T,stringsAsFactors=FALSE)
})


output$ListOfColumns <- renderUI({
  req(dataIn())
  columns <- colnames(dataIn())

  checkboxGroupInput("Columns", "Choose columns",columns)
})     

output$daneIn <- renderTable({
    ret <- rbind(
        head(dataIn(),5),
        tail(dataIn(),5)
    )

    return(ret)



},include.rownames=FALSE)

#ui.r


shinyUI(fluidPage(
tags$img(src="http://administracja.sgh.waw.pl/pl/dpir/obowiazki/PublishingImages/ksiega2019/SGHherbCMYK.png",  width = 150, heigh = 150),

sidebarLayout(

    sidebarPanel(
        # 2. Przegladarka do pobrania danych 
        fileInput("fileInPath", 
            label= h4("Import danych"), accept=("text/csv")),
        radioButtons('plott','Plot',c('ggplot2'='ggplot2', 'lattice'='lattice')
            ),
        radioButtons('format', 'Document format', c('PDF', 'HTML', 'Word'),
                     inline = TRUE),
        downloadButton('downloadReport',label="Wygeneruj raport"),
        uiOutput("ListOfColumns")

       ),
   mainPanel(

        # 5. zakladki wynikiwe 
        tabsetPanel(type = "tabs",

            # 6. wyswietlanie pobranych danych  
            tabPanel("Table", tableOutput("daneIn"))
 ))



#What I've tried to add

dataIn <- reactive({
    inFile <- input$fileInPath

    if (is.null(inFile)) {
        return(NULL)
    }
   d<- read.table(file=inFile$datapath,sep=";",dec=",",header=T,stringsAsFactors=FALSE)
   d <- d[c(input$Columns)]
   return(d)
})

我希望Shiny仅使用在checkboxinput中选择的变量。 现在,checkboxinput停止显示(在添加了最后一部分代码以重新激活之后)

0 个答案:

没有答案