我正在构建一个闪亮的应用程序。每当人们修改" Partido"时,ui应该做出反应。和#34; Estado"问题,但它不会发生。这是服务器和ui:
这是服务器应该做出反应的部分:
*shinyServer(function(input, output, session){
reactivePoll({
if(input$partido == "DEM"){
deputado <- subset(votos$Deputado, votos$Partido == "DEM")
if(input$estado == "AC"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "AC")}
else if(input$estado == "AM"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "AM")}
else if(input$estado == "AP"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "AP")}
else if(input$estado == "CE"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "CE")}
else if(input$estado == "DF"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "DF")}
else if(input$estado == "GO"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "GO")}
else if(input$estado == "MA"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "MA")}
else if(input$estado == "MS"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "MS")}
else if(input$estado == "MT"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "MT")}
else if(input$estado == "PA"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "PA")}
else if(input$estado == "PR"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "PR")}
else if(input$estado == "RJ"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "RJ")}
else if(input$estado == "RO"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "RO")}
else if(input$estado == "RR"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "RR")}
else if(input$estado == "RS"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "RS")}
else if(input$estado == "SC"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "SC")}
else if(input$estado == "SP"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "SP")}
else if(input$estado == "TO"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "TO")}
else if(input$estado == "AL"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "AL")}
else if(input$estado == "BA"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "BA")}
else if(input$estado == "ES"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "ES")}
else if(input$estado == "MG"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "MG")}
else if(input$estado == "PB"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "PB")}
else if(input$estado == "PE"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "PE")}
else if(input$estado == "PI"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "PI")}
if(input$estado == "RN"){
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "RN")}
else{
deputado <- subset(subset(votos$Deputado, votos$Partido == "DEM"),
votos$Estado == "SE")}
}
})*
#
和ui:
*library(shiny)
library(shinydashboard)
votos <- read.csv("votos1.csv", sep=",", header=TRUE, na.strings="NA",
encoding = "UTF-8")
part <- levels(votos$Partido)
lev <- levels(votos$Estado)
shinyUI(fluidPage(
titlePanel("Votação do Impeachment - 2016"),
p("Autora: Bruna Wundervald"),
hr(),sidebarLayout(
sidebarPanel(
selectInput(inputId="partido",
label="Escolha o partido do Deputado",
choices=part,
selected=""),
selectInput(inputId="estado",
label="Escolha o estado do Deputado",
choices=lev,
selected=""),
conditionalPanel("input.partido",
selectInput(inputId="deputado",
label="Escolha o Deputado",
choices=deputado,
selected=""))
),
mainPanel(
tabsetPanel(type = "pills",
# tabPanel(title="Introdução",
# verbatimTextOutput("intro")),
tabPanel(title="Fala",
verbatimTextOutput("fala"))
)))))*
它根本不起作用:(
(服务器部分重复其他选项&#34; Partidos&#34;)
答案 0 :(得分:1)
<强>被修改强> 我不确定你到底想做什么我为你自己准备了一些东西:)
server.ui
votos <- read.csv("~/Downloads/appp/votos1.csv", sep=",", header=TRUE, na.strings="NA",
encoding = "UTF-8")
part <- levels(votos$Partido)
lev <- levels(votos$Estado)
deputado <- levels(votos$Deputado)
shinyServer(function(input, output, session) { # added session
data1 <- reactive({
retval <- votos # show the whole dataset
# show rows only with members of partido
if (input$partido != "nadie") {
retval <- retval[retval$Partido == input$partido, ]
}
# show only rows with a particular estado or
# only with partido and estado
if (input$estado != "nadie") {
retval <- retval[retval$Estado == input$estado, ]
}
# show a particular deputado
if (input$deputado != "nadie") {
retval <- retval[retval$Deputado == input$deputado, ]
}
retval <- retval[ ,c("Deputado", "Fala")]
retval
})
observe({
# if you select a particular partido then you will be able to choose one
# particular deputado of partido
if (input$partido != "nadie") {
new_choices <- as.character(votos[votos$Partido == input$partido, "Deputado"])
updateSelectInput(session, "deputado",
choices = c("nadie", new_choices),
selected = "nadies")
}
if (input$partido == "nadie") {
updateSelectInput(session, "deputado",
choices = c("nadie", deputado),
selected = "nadie")
}
})
output$fala <- renderTable({ data1() })
})
ui.R
library(shiny)
shinyUI(fluidPage(
shinyUI(fluidPage(
titlePanel("Votação do Impeachment - 2016"),
p("Autora: Bruna Wundervald"),
hr(),
sidebarLayout(
sidebarPanel(
selectInput(inputId = "partido",
label = "Escolha o partido do Deputado",
choices = c("nadie", part),
selected = "nadie"),
selectInput(inputId="estado",
label = "Escolha o estado do Deputado",
choices = c("nadie", lev),
selected = "nadie"),
conditionalPanel("input.partido",
selectInput(inputId = "deputado",
label = "Escolha o Deputado",
choices = c("nadie", deputado), # changed
selected = "nadie"))
),
mainPanel(
tabsetPanel(type = "pills",
# tabPanel(title="Introdução",
# verbatimTextOutput("intro")),
tabPanel(title="Fala",
tableOutput("fala"))
# verbatimTextOutput("fala"))
)))))
))