Description Usage Arguments Examples
View source: R/generate_tree.R
Generates a procedural tree with
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | generate_tree(
  x = 0,
  y = NULL,
  z = NULL,
  seed = 2000,
  midpoint = TRUE,
  branch_depth = 6,
  branch_scale = c(0.8, 0.9),
  branch_angle = c(-30, 30),
  branch_angle_vert = seq(-45, 45, by = 5),
  branch_split = 2,
  branch_prune_prob = 0,
  branch_color = "#603000",
  branch_radius_shrink = 15,
  leaf_color = "green",
  leaf_depth_start = NULL,
  leaf_size = 0.2,
  leaf_prob = 1,
  scale = 1
)
 | 
| x | Default '0'. Either the x-coordinate, or if a length-3 vector the x,y, and z coordinates of the base of the tree. | 
| y | Default 'NULL'. The y-coordinate of the base of the tree. Ignored if the 'x' is a length-3 vector. | 
| z | Default 'NULL'. The z-coordinate of the base of the tree. Ignored if the 'x' is a length-3 vector. | 
| seed | Default '2'. Random seed for generating the tree. | 
| midpoint | Default 'TRUE'. Method of extending branches. If 'FALSE', it grows directly to the next node. Else, it first extends a midpoint given the previous orientation and grows from there to the end point. | 
| branch_depth | Default '6'. Number of branch splits to end tree. | 
| branch_scale | Default 'c(0.8,0.9)'. | 
| branch_angle | Default 'c(-30, 30)'. Horizontal branching angle from previous branch. | 
| branch_angle_vert | Default 'seq(-45,45, by=5)'. Vertical branching angle from previous branch. | 
| branch_split | Default '2'. | 
| branch_prune_prob | Default '0'. | 
| branch_color | Default '#603000'. | 
| branch_radius_shrink | Default '15'. Constant that determines the rate the radius shrinks. Higher values result in less shrinking. | 
| leaf_color | Default 'NULL'. | 
| leaf_depth_start | Default 'NULL', automatically set | 
| leaf_size | Default '0.01'. | 
| leaf_prob | Default '1'. | 
| scale | Default '1'. Uniformly scale the tree. | 
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | library(rayrender)
generate_tree(seed=1) %>%
 render_tree()
#Change the branch angle choices
generate_tree(seed=1,branch_angle_vert = c(-15,15)) %>%
 render_tree()
#Change the horizontal branch angle choices
generate_tree(seed=6,branch_angle = seq(-90,90,by=10)) %>%
 render_tree()
#Increase the number of layers
generate_tree(seed=1,branch_depth = 8) %>%
 render_tree()
#Have the leaves start appearing at branch 6 to fill in the tree
generate_tree(seed=1,branch_depth = 8, leaf_depth_start = 6) %>%
 render_tree()
#Change the color and seed to get a different structure
generate_tree(seed=2,branch_depth = 6, leaf_depth_start = 4, leaf_color="pink") %>%
 render_tree()
#Shorten the branches at each junction by random values
generate_tree(seed=2,branch_depth = 6, leaf_depth_start = 4, leaf_color="pink",
             branch_scale = c(0.5,0.6)) %>%
 render_tree()
#Lengthen the branches at each junction by random values (this results in a wild tree)
generate_tree(seed=2,branch_depth = 6, leaf_depth_start = 4, leaf_color="red",
             branch_scale = c(1.1,1.2)) %>%
 render_tree()
#All angles one sign make the tree lean over, and here we double the size of the leaf
generate_tree(seed=2,branch_depth = 6,
             leaf_color="purple", leaf_size=0.4,
             branch_angle_vert = c(15,5)) %>%
 render_tree()
#Include a random chance to not grow branches
generate_tree(seed=4,branch_depth = 8, leaf_depth_start = 6, leaf_color="red",
             branch_prune_prob = 0.5) %>%
 render_tree()
 | 
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.