generate your own fractal tree

hover over buttons to learn what they do


about this project

i made this project as part of my coursework for Forge's Envision course, in which i learned how to make data visualizations in d3.

i had originally planned on making a more traditional data visualization, but didn't have enough time to fully explore my data set. sneak peek here!


the process

the basic idea behind this tree is that i start with an initial branch which spawns two branches off its end.

from there, i generate random angles to orient them at, then for each branch repeat the process.

i then use d3 to transform my generated coordinates into line segments, as well as color and display them.


a note on computational complexity

you may notice a small amount of lag when generating trees, especially when generating random trees.

generating fractal trees like this is not efficient, with a time complexity of O(2n).

i hard coded the depth for all generated fractal trees to be 10, to avoid any browser lockups.


future improvements

while i am a fan of this page's current minimalist design, i know that it is not user friendly.

with more time i would like to create a better UI, but this project is already the result of lack of time.

i would also like to look into making this scale better, so that it is usable on mobile.


thank you so much for taking the time to read this!