Ich habe Daten, die Datum, Temperatur und die Höhe enthält, bei der die Messung aufgezeichnet wurde. Ich versuche, ein einfaches reaktives Plot mit R Shiny zu erstellen, wobei sich das Plot abhängig von den Höhengrenzen ändert, an denen man interessiert ist. Sobald die Grenzen definiert sind, nimmt es den Mittelwert dieser Grenzen für jeden Tag und plottet sie. Hier ist ein Beispiel-Datensatz (Entschuldigung für wie lange umständliche es ist diese zu erzeugen):Fehler in Sequenzauswahl und Plotten - R Shiny
day <- seq.Date(as.Date("2016-01-01"),as.Date("2016-12-31"),by='day')
temperature_c <- runif(366,0,35)
sonde.elev <- 215
df.1 <- data.frame(day,sonde.elev,temperature_c)
sonde.elev <- 220
df.2 <- data.frame(day,sonde.elev,temperature_c)
sonde.elev <- 225
df.3 <- data.frame(day,sonde.elev,temperature_c)
sonde.elev <- 230
df.4 <- data.frame(day,sonde.elev,temperature_c)
sonde.elev <- 235
df.5 <- data.frame(day,sonde.elev,temperature_c)
sonde.elev <- 240
df.6 <- data.frame(day,sonde.elev,temperature_c)
sonde.elev <- 245
df.7 <- data.frame(day,sonde.elev,temperature_c)
sonde.elev <- 250
df.8 <- data.frame(day,sonde.elev,temperature_c)
sonde.elev <- 255
df.9 <- data.frame(day,sonde.elev,temperature_c)
sonde.elev <- 260
df.10 <- data.frame(day,sonde.elev,temperature_c)
sonde.elev <- 265
df.11 <- data.frame(day,sonde.elev,temperature_c)
sonde.elev <- 270
df.12 <- data.frame(day,sonde.elev,temperature_c)
sonde.elev <- 275
df.13 <- data.frame(day,sonde.elev,temperature_c)
sonde.elev <- 280
df.14 <- data.frame(day,sonde.elev,temperature_c)
sonde.elev <- 285
df.15 <- data.frame(day,sonde.elev,temperature_c)
sonde.elev <- 290
df.16 <- data.frame(day,sonde.elev,temperature_c)
campbell_out <- rbind(df.1,df.2,df.3,df.4,df.5,df.6,df.7,df.8,df.9,df.10,df.11,df.12,df.13,df.14,df.15,df.16)
campbell_out <- campbell_out[order(campbell_out$day),]
ich gesetzt habe mein Grundstück bis zu einer Seite Wunsch Sidebar und eine Hauptplatte, die die Handlung enthält.
Hier ist meine ui.R:
#===================
# ui.R
#===================
library(shiny)
shinyUI(pageWithSidebar(
headerPanel("Stack Overflow Lough"),
sidebarPanel(
dateRangeInput(inputId = "dateRange",
label = "Date Range",
start = "2016-01-01",
max = Sys.Date()
),
sliderInput(inputId = "minimumElevation",
label="Feet (ASL) - Minimum",
min = 215,
max = 290,
value = 215,
step = 1),
sliderInput(inputId = "maxmimumElevation",
label="Feet (ASL) - Maximum",
min = 215,
max = 290,
value = 290,
step = 1)
),
mainPanel(plotOutput("theGraph"))
)
)
und hier ist mein server.R:
#===================
# server.R
#===================
library(plyr)
shinyServer(function(input,output){
passData <- reactive({
campbell_out <- campbell_out[campbell_out$day %in%
seq.Date(input$dateRange[1],
input$dateRange[2], by = "days"),]
campbell_out <- campbell_out[campbell_out$sonde.elev %in%
seq(as.numeric(input$minimumElevation),
as.numeric(input$maximumElevation), by=0.000001),]
campbell_out
})
output$theGraph <- renderPlot({
graphData <- ddply(passData(),.(day),numcolwise(mean))
theGraph <- plot(temperature_c~day,data=graphData, ylab = "Temperature (c)", xlab = "Time")
print(theGraph)
})
})
Wenn ich dies in R Shiny laufen, und wählen Sie die Daten, die ich interessiert bin , bekomme ich folgende Fehlermeldung:
Warning: Error in seq.default: 'to' must be of length 1
Wenn ich führe ein ähnliches Skript den Datensatz basierend auf Probe zu bestimmten Terminen und Elevation und th Wenn es geplottet wird, funktioniert es gut. Das Problem scheint also bei meinem Shiny-Code zu liegen. Ich wäre dankbar, wenn mir jemand sagen könnte, wo ich falsch liege.
Uh, hat das für Sie funktioniert? –