The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
The fractalforest
package allows the simulation of
fractal trees and, consequently, fractal forests. The trees are created
using the Lindenmayer system (L-system).
It is possible to use forest inventory, floristic surveys, and phytosociological studies databases to represent the schematic profile of the forest, as shown in the following example.
library(fractalforest)
library(forestmangr)
library(dplyr)
data("exfm20")
<- exfm20 %>%
dados filter(!dead)
<- build_forest_profile(data = dados,
fracflor height = Htot,
diameter = dbh,
label = scientific.name,
leaf_size = 50,
tree_model = 2,
sample = TRUE,
n_trees = 30,
)
plot_forest_profile(fracflor,
label = scientific.name)
The build_forest_profile
function creates a fractal tree
database from a dataset where each row represents a tree. When the
argument sample = TRUE
, the trees to be plotted are
randomly selected from the dataset, and the number of trees is defined
by the n_trees
argument.
The plot_forest_profile
function uses the
ggplot2
package to plot the fractal forest based on the
dataset created by the build_forest_profile
function.
Some parameters make it possible to customize the visualization of fractal trees, including adding colors, and diameters from the base to the top of the trees.
<- fracflor %>%
fracflor_colors select(tree_id) %>%
distinct() %>%
rowwise() %>%
mutate(cor_folhas = sample(c('darkgreen','darkolivegreen','darkolivegreen4','darkseagreen4'), 1),
cor_ramos = sample(c('firebrick4','brown4','chocolate4','bisque4'),1))
<- fracflor %>%
fracflor2 left_join(fracflor_colors, by = 'tree_id')
plot_forest_profile(fracflor2,
d_col = diameter,
branch_color = cor_ramos,
leaf_color = cor_folhas,
label = scientific.name)
There are several ways to introduce randomness when constructing the
fractal trees and fractal forests. The build_forest_profile
function includes arguments that control the variability of branch
angles, lengths, and even the distance between trees. The parameters are
detailed in the function documentation.
<- build_forest_profile(data = dados,
fracflor height = Htot,
diameter = dbh,
label = scientific.name,
leaf_size = 50,
randomness = T,
angle_cv = .1,
length_cv = .3,
dist_cv = .2,
tree_model = 6,
sample = TRUE,
n_trees = 30,
)#> Building tree 1 of 30
2 of 30
Building tree 3 of 30
Building tree 4
Building tree #> of 30
5 of 30
Building tree 6 of 30
Building tree 7 of 30
Building tree
Building#> tree 8 of 30
9 of 30
Building tree 10 of 30
Building tree 11 of
Building tree #> 30
12 of 30
Building tree 13 of 30
Building tree 14 of 30
Building tree
Building#> tree 15 of 30
16 of 30
Building tree 17 of 30
Building tree 18 of
Building tree #> 30
19 of 30
Building tree 20 of 30
Building tree 21 of 30
Building tree
Building#> tree 22 of 30
23 of 30
Building tree 24 of 30
Building tree 25 of
Building tree #> 30
26 of 30
Building tree 27 of 30
Building tree 28 of 30
Building tree
Building#> tree 29 of 30
30 of 30
Building tree
<- fracflor %>%
fracflor2 left_join(fracflor_colors, by = 'tree_id')
plot_forest_profile(fracflor2,
d_col = diameter,
branch_color = cor_ramos,
leaf_color = cor_folhas,
label = scientific.name)
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.