R 创建用于子集数据的输入$selection,并创建单选按钮以选择数据中的打印类型

R 创建用于子集数据的输入$selection,并创建单选按钮以选择数据中的打印类型,r,switch-statement,shiny,subset,R,Switch Statement,Shiny,Subset,我一直在尝试利用shiny为几种不同类型的数据创建几种可视化。昨晚,我能够对数据进行子集划分,但我不知道如何使用这些数据切换绘图类型。 我有以下数据框: Hours<-c(2,3,4,2,1,1,3) Project<-c("a","b","b","a","a","b","a") cd=data.frame(Project,Hours) 我想将以下代码从jdharrison合并到ui文件中: ui = bootstrapPage( radioButtons("pTyp

我一直在尝试利用shiny为几种不同类型的数据创建几种可视化。昨晚,我能够对数据进行子集划分,但我不知道如何使用这些数据切换绘图类型。 我有以下数据框:

Hours<-c(2,3,4,2,1,1,3)
Project<-c("a","b","b","a","a","b","a")
cd=data.frame(Project,Hours)
我想将以下代码从jdharrison合并到ui文件中:

  ui = bootstrapPage(
     radioButtons("pType", "Choose plot type:",
             list("A", "B", "C")),
plotOutput('plot')
以下是我试图合并的他的帖子的链接:

您需要使用
反应式
功能

ui.R:

服务器.R

library(shiny)
library(ggplot2)
library(lattice)

# Define shiny server
shinyServer(function(input, output) {
  pdata <- reactive({
    subset(cd, Project==input$proj)
  }
  )
  plotType <- reactive({
    switch(input$pType,
           A = hist,
           B = barplot,
           C = pie)
  })
  output$testPlot <- renderPlot({ 
    plotType()(pdata()[["Hours"]])
  })
})
库(闪亮)
图书馆(GG2)
图书馆(格子)
#定义闪亮服务器
shinyServer(功能(输入、输出){
数据
  ui = bootstrapPage(
     radioButtons("pType", "Choose plot type:",
             list("A", "B", "C")),
plotOutput('plot')
library(shiny)
ulist=levels(cd$Project)
names(ulist) = ulist
shinyUI(pageWithSidebar(
  headerPanel("Project Data"),
  sidebarPanel(
    radioButtons("pType", "Choose plot type:",
                 list("A", "B", "C")),
    selectInput("proj", "Project:",ulist)
  ),
  mainPanel(
    plotOutput("testPlot")
  )
)
)
library(shiny)
library(ggplot2)
library(lattice)

# Define shiny server
shinyServer(function(input, output) {
  pdata <- reactive({
    subset(cd, Project==input$proj)
  }
  )
  plotType <- reactive({
    switch(input$pType,
           A = hist,
           B = barplot,
           C = pie)
  })
  output$testPlot <- renderPlot({ 
    plotType()(pdata()[["Hours"]])
  })
})