11library(shiny )
22library(traits )
33library(ggplot2 )
4+ library(lubridate )
45
56knitr :: opts_chunk $ set(echo = FALSE , cache = TRUE )
67
@@ -9,14 +10,14 @@ options(betydb_key = readLines('~/.betykey', warn = FALSE),
910 betydb_api_version = ' beta' )
1011
1112experiments <- betydb_query(table = ' experiments' )
12- # varIdsObserved <- as.numeric(unique(traitData$variable_id) )
13+ # varIdsObserved <- as.numeric()
1314
1415ui <- fluidPage(
1516 titlePanel(" BETYdb Trait Data" ),
1617 sidebarLayout (
1718 sidebarPanel(
18- selectInput(' selectedExp' , ' Experiment' , experiments $ name )
19- # selectInput('selectedVariable','Variable', varIdsObserved )
19+ selectInput(' selectedExp' , ' Experiment' , experiments $ name ),
20+ uiOutput( ' selectVariable ' )
2021 ),
2122 mainPanel(
2223 plotOutput(' traitPlot' )
@@ -28,20 +29,26 @@ server <- function(input, output) {
2829
2930 output $ traitPlot <- renderPlot({
3031
31- fullTraitData = data.frame ()
32+ fullTraitData <- data.frame ()
3233
3334 selectedExpRow <- subset(experiments , name == input $ selectedExp )
3435 experimentStartDate <- as.Date(selectedExpRow $ start_date )
3536 experimentEndDate <- as.Date(selectedExpRow $ end_date )
3637
3738 currDate <- experimentStartDate
3839 while (experimentEndDate - currDate != 0 ) {
39- currTraitData <- betydb_query(table = ' traits' , date = paste0(' ~' , currDate ), limit = ' 5 ' )
40+ currTraitData <- betydb_query(table = ' traits' , date = paste0(' ~' , currDate ), limit = ' 1 ' )
4041 fullTraitData <- rbind(fullTraitData , currTraitData )
4142 currDate <- currDate + days(1 )
4243 }
4344
44- qplot(as.Date(fullTraitData $ date ), fullTraitData $ mean , main = " [Variable] for [Experiment]" ,
45+ output $ selectedVariable <- renderUI({
46+ variableIds <- as.numeric(unique(fullTraitData $ variable_id ))
47+ selectInput <- selectInput(' selectedVariable' , ' Variable ID' , variableIds )
48+ })
49+ variableTraitData <- subset(fullTraitData , variable_id = input $ selectedVariable )
50+
51+ qplot(as.Date(variableTraitData $ date ), variableTraitData $ mean , main = " [Variable] for [Experiment]" ,
4552 xlab = " Date" , ylab = " Unit" , geom = " auto" )
4653 })
4754}
0 commit comments