bioRad provides standardized methods for extracting and reporting biological signals from weather radars. It includes functionality to inspect low-level radar data, process these data into meaningful biological information on animal speeds and directions at different altitudes in the atmosphere, visualize these biological extractions, and calculate further summary statistics.
To get started, see:
Documentation for the latest development version can be found here.
For OS X and Linux the GNU Scientific Library (GSL), PROJ and HDF5 libraries need to be installed as system libraries prior to installation, which are required by dependency package vol2birdR:
|OS X (using Homebrew)||
|Debian-based systems (including Ubuntu)||
|Systems supporting yum and RPMs||
Additional required system libraries on Linux (Ubuntu)
The following system libraries are required before installing bioRad on Linux systems. In terminal, install these with:
setRepositories(ind = 1:2)
You can install the released version of bioRad from CRAN with:
Alternatively, you can install the latest development version from GitHub with:
# install.packages("devtools") devtools::install_github("adokter/bioRad")
Then load the package with:
Here we read an example polar volume data file with
read_pvolfile(), extract the scan/sweep at elevation angle 3 with
get_scan(), project the data to a plan position indicator with
project_as_ppi() and plot the radial velocity of detected targets with
library(tidyverse) # To pipe %>% the steps below system.file("extdata", "volume.h5", package = "bioRad") %>% read_pvolfile() %>% get_scan(3) %>% project_as_ppi() %>% plot(param = "VRADH") # VRADH = radial velocity in m/s
Radial velocities towards the radar are negative, while radial velocities away from the radar are positive, so in this plot there is movement from the top right to the bottom left.
Once vertical profile data are loaded into bioRad, these can be bound into time series using
bind_into_vpts(). Here we read an example time series, project it on a regular time grid with
regularize_vpts() and plot it with
The gray bars in the plot indicate gaps in the data.
The altitudes in the profile can be integrated with
integrate_profile() resulting in a dataframe with rows for datetimes and columns for quantities. Here we plot the quantity migration traffic rate (column
my_vpi <- integrate_profile(example_vpts) plot(my_vpi, quantity = "mtr") # mtr = migration traffic rate
To know the total number of birds passing over the radar during the full time series, we use the last value of the cumulative migration traffic (column
my_vpi %>% pull(mt) %>% # Extract column mt as a vector last() #>  129491.5
For more exercises, see this tutorial.