R闪亮的ggplot facet_wrap取决于选择输入

我正在尝试制作一个R shiny应用,该应用允许您选择一个组(性别,年龄,种族等),然后在每个级别的facet_wrap中显示风险得分的直方图在那个小组中。例如,如果选择性别作为组,则直方图将具有针对男性和女性的方面。在下面的代码中,它不会产生任何方面。

library(shiny)
library(ggplot2)
# Define UI for miles per gallon app ----
ui <- fluidPage(

  # Application title
  titlePanel("Group fairness analysis"),# Sidebar 
  sidebarLayout(
    sidebarPanel(
      selectInput("group","Group:",c("Age" = "age","Gender" = "gender","Region" = "region","Ethnicity"="ethnicity"))
      ),# Show a plot of the generated distribution
    mainPanel(
      plotOutput("distPlot")
    )
  )
)

# Define server logic----
server <- function(input,output) {

  output$distPlot <- renderPlot({   
  gg <- ggplot(df,aes(x=score))+
      geom_histogram(breaks=seq(0,100,10))+
      facet_wrap(~input$group)
      gg

  })

}

shinyApp(ui,server)
MYLIFEA 回答:R闪亮的ggplot facet_wrap取决于选择输入

它不起作用,因为input$group是字符类型,而facet_wrap需要带引号的变量。

通过用get引用来解决:

gg <- ggplot(df,aes(x=score))+
      geom_histogram(breaks=seq(0,100,10))+
      facet_wrap(~get(input$group))

希望这会有所帮助!

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

大家都在问