---
title: "Station data"
output: rmarkdown::html_vignette
vignette: >
%\VignetteIndexEntry{Station data}
%\VignetteEncoding{UTF-8}
%\VignetteEngine{knitr::rmarkdown}
---
``` r
library(barrks)
```
To calculate the phenology based on station data, `phenology()` should be called
with a data frame as input. It should have a `date` column whose values need
to be interpretable by `as.Date()`, and a `station` column that specifies the
name of the respective station. Additional columns provide the actual
parameters used by the model. This vignette uses the station data provided by
`barrks` as sample data.
``` r
station_data <- barrks_data('stations')
head(station_data, 10)
#> # A tibble: 10 x 9
#> date station tmean tmin tmax rad sunrise sunset daylength
#>
#> 1 2011-01-01 Freiburg 0.1 -0.4 0.7 228. 499 1006 8.45
#> 2 2011-01-02 Freiburg -0.1 -3.4 2.2 642. 499 1007 8.47
#> 3 2011-01-03 Freiburg -3.4 -8.4 0.3 1708. 499 1008 8.48
#> 4 2011-01-04 Freiburg -3.7 -7.6 -1.4 1194. 499 1009 8.5
#> 5 2011-01-05 Freiburg -2.2 -6.5 2.4 1639. 499 1010 8.52
#> 6 2011-01-06 Freiburg 7.8 -2.6 12.8 356. 499 1011 8.53
#> 7 2011-01-07 Freiburg 11.5 9.1 14.9 336. 498 1012 8.57
#> 8 2011-01-08 Freiburg 12.8 7.7 16.2 736. 498 1013 8.58
#> 9 2011-01-09 Freiburg 8.7 4 13.3 169. 498 1015 8.62
#> 10 2011-01-10 Freiburg 2.9 1.9 4.1 397. 497 1016 8.65
```
To illustrate the beetle development at a specific station, `plot_development_diagram()`
is used. It is possible to add several phenology objects to the plot that will be
displayed as lines. The area between the lines of the particular generations
will be filled if the respective generation appears in all phenology objects.
``` r
# calculate phenology with different parameters
pheno_sunny <- phenology('phenips-clim', station_data, exposure = 'sunny')
pheno_shaded <- phenology('phenips-clim', station_data, exposure = 'shaded')
pheno_last <- phenology('phenips-clim', station_data, exposure = 'shaded',
onset_mode = 0.9)
#> Error in (function (classes, fdef, mtable) : kann keine vererbte Methode finden für Funktion 'nlyr<-' für Signatur '"SpatRaster", "NULL"'
```
``` r
# plot development diagram
plot_development_diagram(list('sunny' = pheno_sunny,
'shaded' = pheno_shaded,
'shaded + late onset' = pheno_last),
xlim = as.Date(c('2011-03-15', '2011-12-31')),
.lty = 1:3)
#> Error in eval(expr, envir, enclos): object 'pheno_last' not found
```