在R闪亮功能中使用预先指定的变量作为参数

时间:2018-02-22 01:21:24

标签: r shiny shinyjs

我正在使用R shiny创建一个调查,并在我的Shiny App开头有以下功能:

install.packages("devtools")
spotifydata<-spotifycharts::chart_top200_weekly()
s<-spotifydata$artist
h<-head(s,20)

我想知道是否有任何地方可以显示变量“h”??

的输出

我想以下列方式使用“selectInput”以下拉菜单的方式显示每个结果。

 selectInput("artists","pick 3 artists out of the top 10",
              c("h[1]","h[2]","h[3]","h[4]","h[5]","h[6]",
                "h[7]","h[8]","h[9]","h[10]"),multiple = TRUE)

我知道这会产生错误但是我想知道是否有办法模仿这个

1 个答案:

答案 0 :(得分:1)

selectInput中,变量应该没有这样的引号:

 selectInput("artists","pick 3 artists out of the top 10",
                c(h[1],h[2],h[3],h[4],h[5],h[6],
                  h[7],h[8],h[9],h[10]),multiple = TRUE)

以下是一款展示相同功能的应用:

library(shiny)

spotifydata<-spotifycharts::chart_top200_weekly()
s<-spotifydata$artist
h<-head(s,20)

ui <- fluidPage(
    selectInput("artists","pick 3 artists out of the top 10",
                c(h[1],h[2],h[3],h[4],h[5],h[6],
                  h[7],h[8],h[9],h[10]),multiple = TRUE)
)

server <- function(input, output)
{}

shinyApp(ui, server) 

输出如下:

enter image description here

请注意,使用此方法,变量h 在不同用户会话之间共享

如果您不希望变量h在不同的用户会话之间共享,您可以使用以下方法,我们在服务器函数中获取h值并使用函数{更新select输入的选项{1}}

updateSelectInput