Visualizing your code's architecture
I am afraid that there is no perfect tool for comprehensive visualizing your program architecture and its control flow, you should keep them in your head and make your software architecture clean, uniform and predictable. However there are some tools that can help you.
In Pycharm
you can:
view structure and hierarchy of the source code
view UML diagram of your classes.
There is also the pycallgraph2
Python
module that can create call graph visualizations for Python
applications. (This is a maintained fork of the discontinued pycallgraph
Python
module)
And there is Codimension
IDE
that has Python
code visualization feature
Maybe I'm late but I think I found another tool which perfectly matches this question: Sourcetrail, which officially supports C/C++/Java/Python in 2019. The text down below comes from its official doc:
Sourcetrail is an interactive source explorer that simplifies navigation in existing source code. Sourcetrail's aim is to give answers to all your questions about your source code. Sourcetrail first indexes your code and gathers data about its structure and then provides you a simple interface consisting of three interactive views, each playing a key role in getting information.
Update: Sourcetrail is officially open source as well. Github link.