Many populations that change over time are temporally autocorrelated, which means that the random noise in each timestep is correlated to that of the previous timestep. Instead of uncorrelated white noise, these populations are governed by blue noise (negatively autocorrelated) or red noise (positively autocorrelated.)
The colorednoise package allows you to simulate colored noise as well as populations whose behavior is governed by colored noise.
You can install the latest version of colorednoise from github with:
# install.packages("devtools")
devtools::install_github("japilo/colorednoise")
Here are plots of blue- and red-noise populations generated by the
matrix_model
function.
library(colorednoise)
set.seed(7927)
pop_blue <- matrix_model(
data = list(
mean = matrix(c(0.6687097, 0.2480645, 0.6687097, 0.4335484), ncol=2),
sd = matrix(c(0.34437133, 0.08251947, 0.34437133, 0.10898160), ncol=2),
autocorrelation = matrix(rep(-0.4, 4), ncol=2)
), timesteps = 100, initialPop = c(100, 100)
)
pop_red <- matrix_model(
data = list(
mean = matrix(c(0.6687097, 0.2480645, 0.6687097, 0.4335484), ncol=2),
sd = matrix(c(0.34437133, 0.08251947, 0.34437133, 0.10898160), ncol=2),
autocorrelation = matrix(rep(0.4, 4), ncol=2)
), timesteps = 100, initialPop = c(100, 100)
)
ggplot(pop_blue, aes(x = timestep, y = total)) + geom_line(col="blue") + ylim(0, 6000)
ggplot(pop_red, aes(x = timestep, y = total)) + geom_line(col="red") + ylim(0, 6000)
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.