我有一个闪亮的应用程序,它接受一个csv文件的输入。
我在server.R
myPlot <- function(data)
{此函数使用括号中数据框的变量。此数据框是上传文件的输入。}
想象一下,如果数据框中没有函数使用的列,我们将在闪亮选项卡中遇到错误。
如何处理这样的错误?
我想通过抛出一条消息说明&#34;以下文件不兼容来处理它。&#34;
答案 0 :(得分:0)
就像@UnnamedUser建议的那样,您可以使用validate()
和need()
函数来检查条件:
示例:我正在尝试绘制data$Col_A
和data$Col_B
。该图仅在两列都在data.frame中时呈现,否则显示预定义的错误消息。
library(shiny)
data <- data.frame(
Col_A = 1:5,
Col_D = 16:20)
ui <- fluidPage(
plotOutput("plot")
)
server <- function(input, output, session){
output$plot <- renderPlot({
validate(
need(
sum(c("Col_A", "Col_B") %in% colnames(data)) == 2, "Col_A and/or Col_B columns are missing!")
)
plot(data$Col_A, data$Col_B)
})
}
shinyApp(ui, server)