Skip to content

Instantly share code, notes, and snippets.

@tcash21
Last active December 21, 2015 02:19
Show Gist options
  • Save tcash21/6234591 to your computer and use it in GitHub Desktop.
Save tcash21/6234591 to your computer and use it in GitHub Desktop.
Rickshaw chart error in Shiny
.chart_container {
position: relative;
display: inline-block;
font-family: Arial, Helvetica, sans-serif;
}
.rChart {
display: inline-block;
margin-left: 40px;
}
.yAxis {
position: absolute;
top: 0;
bottom: 0;
width: 40px;
}
.legend {
position: absolute;
top: 0;
right: -160px;
vertical-align: top;
}
.slider {
margin-left: 40px;
margin-top: 12px;
}
require(shiny)
require(rCharts)
inputChoices <- c("A", "B", "C", "D")
shinyServer(function(input, output, session){
input2Choices <- reactive({
inputChoices[-grep(input$input1, inputChoices)]
})
output$input1 <- renderUI({
selectInput("input1", "Input 1:", choices=as.list(inputChoices))
})
output$input2 <- renderUI({
if(is.null(input$input1))
return()
selectInput("input2", "Input 2:", choices=input2Choices())
})
carrierInput1 <- reactive({
switch(input$input1,
"A" = 1,
"B" = 2,
"C" = 3,
"D" = 4)
})
carrierInput2 <- reactive({
if(is.null(input$input2))
return()
if(input$input1 != input$input2){
return()
}
switch(input$input2,
"A" = 1,
"B" = 2,
"C" = 3,
"D" = 4)
})
getData <- function(){
return(carrierInput2())
}
output$mychart = renderChart2({
z<-getData()
if(is.null(input$input1))
return()
usp = reshape2::melt(USPersonalExpenditure)
p4 <- Rickshaw$new()
p4$layer(value ~ Var2, group = 'Var1', data = usp, type = 'area')
p4$set(width = 600, slider = TRUE)
#return(p4)
p4
})
# output$show <- renderPrint({
# if(is.null(input$input1))
# return()
# print(carrierInput1())
# })
output$show2 <- renderPrint({
if(is.null(input$input2)){
return()
}
if(input$input1 == input$input2){
return()
}
#print(carrierInput2())
Sys.sleep(2)
})
})
require(shiny)
require(rCharts)
shinyUI(pageWithSidebar(
headerPanel("Dynamic UI inputs with Shiny"),
sidebarPanel(
includeCSS('app.css'),
uiOutput('input1'),
uiOutput('input2')
),
mainPanel(
showOutput("mychart", "rickshaw")
# verbatimTextOutput("show2")
)
))
Copy link

ghost commented Aug 14, 2013

sleepingbag

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment