【发布时间】:2018-09-08 10:14:46
【问题描述】:
我正在使用闪亮从某个文件夹上传不同的数据文件并根据某个列绘制直方图。每个文件的名称类似于"30092017ARB.csv" (date + ARB.csv)。
代码循环遍历数据文件夹中的所有文件名,并在下拉底部打印文件名。选择文件名后,它应该被上传并绘制mw-column 的直方图(列的名称是“mw”)。我的 GUI 如下所示:
library("shiny")
dataset <- list.files("C:/R_myfirstT/data", pattern=".*.csv$")
# Define UI for dataset viewer app ----
ui <- fluidPage(
# App title ----
titlePanel("Data plot"),
# Sidebar layout with input and output definitions ----
sidebarLayout(
# Sidebar panel for inputs ----
sidebarPanel(
# Input: Selector for choosing dataset ----
selectInput(inputId = "date",
label = "Choose a date:",
choices = dataset)
),
# Main panel for displaying outputs ----
mainPanel(
plotOutput("plot")
)
)
)
和服务器
# Define server ----
dataset <- list.files("C:/R_myfirstT/data", pattern=".*.csv$")
dat.name<-paste("C:/R_myfirstT/data/",dataset,sep = "")
server <- function(input, output) {
datasetInput <- reactive({
switch(input$dataset,
for (i in 1:length(dataset)){
toString(dataset[i])=read.csv(file=dat.name[i], header=TRUE, sep=";")
}
)
output$plot <- renderPlot({
hist(dataset.mw, breaks = 40)
})
})
}
【问题讨论】: