Pregunta

Estoy tratando de crear una aplicación brillante que traza los datos como una tabla de burbujas.El problema que estoy teniendo es el subconjunto.El usuario puede elegir el subconjunto de datos con algunas de las entradas.A continuación se muestra algunos del código que tengo.Sigo obteniendo este error: Error in data.frame(NGERACERACODICIONGCODECODE

global.r

#Import File From Computer
data <- read.csv("C:\\Users\\User\\Documents\\Project\\Shiny\\data.csv", header=TRUE)

Los datos se pueden replicar con los siguientes comandos:

Type <- c('A','A','A','B','B','B','C','C','C',)
Date <- as.Date(c('2010-11-1','2008-3-25','2007-3-14','2010-11-1','2008-3-25','2007-3-14','2010-11-1','2008-3-25','2007-3-14'))
Run <- c('RUN1','RUN2','RUN3','RUN1','RUN2','RUN3','RUN1','RUN2','RUN3')
Var1 <- c(1,2,3,4,5,6,7,8,9)
Var2 <- c(2,4,6,8,10,12,14,16,18)
Var3 <- c(3,6,9,12,15,18,21,24,27)
Var4 <- c(4,8,12,16,20,24,28,32,36)
data <- data.frame(Type,Date,Run,Var1,Var2,Var3,Var4)

ui.r

library(googleVis)

shinyUI(fluidPage(
titlePanel("Visualization Tool"),
sidebarLayout(
headerPanel('Data Selection'),
 sidebarPanel(
selectInput('x', 'X Variable', names(data)),
selectInput('y', 'Y Variable', names(data)),
selectInput('z', 'Z Variable', names(data),
selected=names(data)[[5]]),

checkboxGroupInput('Type', 'Type', c(
  "A"="A",
  "B"="B",
  "C"="C")),
checkboxGroupInput('Run', 'Run', c(
  "RUN1"="RUN1",
  "RUN2"="RUN2",
  "RUN3"="RUN3"))

)),

mainPanel(htmlOutput(("chart"))
)
))

server.r

library(shiny)
library(googleVis)

shinyServer(function(input, output){
datasetInput <- total
output$chart <- renderGvis({
gvisBubbleChart(datasetInput, idvar=input$Name, xvar=input$x, yvar=input$y,
                color=input$Name, sizevar=input$z)
 })
})

¿Fue útil?

Solución

Me di cuenta ... En ui.r, cambié los nombres a un vector

xx<-c("Type"="Type", "Date"="Date", "Run"="Run","Var1"="Var1","Var2"="Var2","Var3"="Var3","Var4"="Var4")

ui.r se convierte en:

library(googleVis)

shinyUI(fluidPage(
titlePanel("Visualization Tool"),
sidebarLayout(
headerPanel('Data Selection'),
 sidebarPanel(
selectInput('x', 'X Variable', xx),
selectInput('y', 'Y Variable', xx),
selectInput('z', 'Z Variable', xx),


checkboxGroupInput('Type', 'Type', c(
  "A"="A",
  "B"="B",
  "C"="C")),
checkboxGroupInput('Run', 'Run', c(
  "RUN1"="RUN1",
  "RUN2"="RUN2",
  "RUN3"="RUN3"))

)),

mainPanel(htmlOutput(("chart"))
)
))

server.r se convierte:

library(shiny)
library(googleVis)

shinyServer(function(input, output){
datasetInput <- reactive({data[data$Type %in% input$Type,]})
output$chart <- renderGvis({
gvisBubbleChart(datasetInput(), idvar="Type", xvar=input$x, yvar=input$y,
                color="Type", sizevar=input$z)
 })

})

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top