我在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停止显示(在添加了最后一部分代码以重新激活之后)