我已经使用shinydashboard
程序包创建了R Shiny应用程序。我似乎无法使用selectInput
函数在下拉框中显示不等式或Unicode字符。谁能帮我弄清楚如何在下拉菜单中出现大于或大于等于(≥)的符号?这是一个演示问题的示例:
library(shiny)
library(shinydashboard)
library(shinyjs)
ui <- shinyUI(dashboardPage(
dashboardHeader(),
dashboardSidebar(collapsed = FALSE,
selectInput("Age", "4. Select Age Group:",
c("\u2265 6 months" = "_6plus",
"&ge 6 months" = "_6plus2",
"≥ 6months" = "_6plus3",
"≥ 6months" = "_6plus3",
"6 months - 4 years" = "_6_4"))),
dashboardBody(
useShinyjs()
)
))
server <- shinyServer(function(input, output, session) {
#addClass(selector = "body", class = "sidebar-collapse")
})
shinyApp(ui = ui, server = server)
但是,所有这些尝试似乎都不起作用。我将不胜感激。谢谢。
经过一段时间的研究,我找到了一个解决方案,但是我仍然希望收到其他人的建议。我能够做到这一点的唯一方法是将年龄类别放置在UTF-8文本文件(例如agegroups.txt
)中,并使用readr
包读取文件,并从读取的内容中创建命名向量轻敲一下,然后使用向量创建下拉菜单。这是一个有效的示例:
文本文件:
≥6 months
6 months - 17 years
≥18 years
R代码:
library(readr)
agegroups <- unique(read_csv("d:\\\\agegroups.txt"))
agegroupchoices <- setNames(agegroups$AgeGroups, agegroups$AgeGroups)
ui <- shinyUI(dashboardPage(
dashboardHeader(),
dashboardSidebar(
collapsed = FALSE,
selectInput("Age", "4. Select Age Group:", agegroupchoices)
),
dashboardBody(
useShinyjs()
)
))
server <- shinyServer(function(input, output, session) {})
shinyApp(ui = ui, server = server)