使用百分比滑块R Shiny

我正在R Shiny中构建一个具有百分比滑块的仪表板。我正在尝试使其成为反应性函数,以便在用户移动滑块时调整数据表。但是我一直在尝试使它动态化,尽管代码没有出错,但仍然无法正常工作。下面的代码段:

ui <- dashboardPage(

  dashboardBody(fluidRow(column(width=3,sliderInput("slider","Threshold:",100,post = " %",50))))

)

server <- shinyServer(function(input,output,session){

reactive({

Value = as.character(c(input$slider))

})  

  output$Data_Table <- 

    renderTable({  

  Tbl_Data[which(Tbl_Data[,5]>input$Value),]

    })    

})

shinyApp(ui,server)

任何帮助将不胜感激。

谢谢

编辑-在下面测试数据,很抱歉,我不知道如何以表格格式放置数据:

公司帐户价值使用量 美国广播公司史密斯先生187,729,185 100,000,000 187.73% 史密斯夫人181,479,755 200,000 90.74% GHI琼斯先生97,219,166 200,000 48.61% JKL琼斯太太91,070,604 300,000 30.36%

zilan112 回答:使用百分比滑块R Shiny

此处回溯;

input$Value

未定义。 input“列表”包含所有输入控件; Value不是其中之一。

在您的代码中,Value是反应式的。因此,要使用它,请致电Value()

第二,input$slider本身就是一个数值。我不记得它是在0-100还是0.0-1.00的范围内,而您决定将其转换为字符串(as.character(c(input$slider)))(为什么还要调用额外的c?)

因此,您正在做的比较是在一个字符串上。哪些可能会或可能不会产生意外的结果。取决于Tbl_Data第五列的类型-是字符还是数字矢量?

如果Tbl_Data[,5]是数字,则您的比较可以简化为

Tbl_Data[Tbl_Data[,5]>input$slider,]

因为which返回参数解析为TRUE的整数位置-并且在进行子集设置时,您直接使用TRUEFALSE的逻辑向量。

本文链接:https://www.f2er.com/3160376.html

大家都在问