It is a Python decorator that will help you visualizate the function calls, in particular for the recursive ones. Under the hood Graphviz is used to generate the graph.
For the build, you only need the following requirements:
- Python 3+ (tested with 3.12.4)
To install it from PyPi, you can run the following command:
python -m pip install callviz
If you want to help the project, you can follow the guidelines in CONTRIBUTING.md.
Here is an example of how you could use the decorator.
from callviz import callviz
@callviz(_format="png", memoization=True, open_file=True)
def fib(n: int):
if n < 2:
return n
return fib(n - 2) + fib(n - 1)
@callviz(show_link_value=False)
def rev(arr, new):
if arr == []:
return new
return rev(arr[1:], [arr[0]] + new)
fib(7)
rev(list(range(6, 0, -1)), [])