Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gak/pycallgraph
pycallgraph is a Python module that creates call graphs for Python programs.
https://github.com/gak/pycallgraph
Last synced: about 1 month ago
JSON representation
pycallgraph is a Python module that creates call graphs for Python programs.
- Host: GitHub
- URL: https://github.com/gak/pycallgraph
- Owner: gak
- License: gpl-2.0
- Archived: true
- Created: 2009-08-11T01:03:55.000Z (about 15 years ago)
- Default Branch: develop
- Last Pushed: 2024-04-09T02:03:25.000Z (7 months ago)
- Last Synced: 2024-09-21T18:49:32.148Z (about 1 month ago)
- Language: Python
- Homepage:
- Size: 2.9 MB
- Stars: 1,819
- Watchers: 71
- Forks: 336
- Open Issues: 61
-
Metadata Files:
- Readme: README.rst
- License: LICENSE
Awesome Lists containing this project
- awesome-python-resources - GitHub - 30% open · ⏱️ 28.02.2018): (代码分析和 Lint 工具)
- starred-awesome - pycallgraph - pycallgraph is a Python module that creates call graphs for Python programs. (Python)
- my-awesome - gak/pycallgraph - 04 star:1.8k fork:0.3k pycallgraph is a Python module that creates call graphs for Python programs. (Python)
- awesome-fancy-toolkit - Create Call Graphs for Python Programs, pycallgraph
README
.. image:: http://unmaintained.tech/badge.svg
:target: http://unmaintained.tech/
:alt: No Maintenance IntendedProject Abandoned
#################Many apologies. I've stopped maintaining this project due to personal time constraints.
https://github.com/Lewiscowles1986/py-call-graph is a currently maintained fork.
I'm happy to forward users to any new forks, or to discuss PyPI ownership.
Python Call Graph
#################Welcome! Python Call Graph is a `Python `_ module that creates `call graph `_ visualizations for Python applications.
.. image:: https://img.shields.io/travis/gak/pycallgraph.svg
:target: https://travis-ci.org/gak/pycallgraph
.. image:: https://img.shields.io/coveralls/gak/pycallgraph/develop.svg
:target: https://coveralls.io/r/gak/pycallgraph?branch=develop
.. image:: https://img.shields.io/pypi/v/pycallgraph.svg
:target: https://crate.io/packages/pycallgraph/
.. image:: https://img.shields.io/pypi/dm/pycallgraph.svg
:target: https://crate.io/packages/pycallgraphScreenshots
===========Click on the images below to see a larger version and the source code that generated them.
.. image:: https://pycallgraph.readthedocs.io/en/develop/_images/basic_thumb.png
:target: https://pycallgraph.readthedocs.io/en/develop/examples/basic.html
.. image:: https://pycallgraph.readthedocs.io/en/develop/_images/regexp_grouped_thumb.png
:target: https://pycallgraph.readthedocs.io/en/develop/examples/regexp_grouped.html
.. image:: https://pycallgraph.readthedocs.io/en/develop/_images/regexp_ungrouped_thumb.png
:target: https://pycallgraph.readthedocs.io/en/develop/examples/regexp_ungrouped.htmlProject Status
==============The latest version is **1.0.1** which was released on 2013-09-17, and is a backwards incompatible from the previous release.
The `project lives on GitHub `_, where you can `report issues `_, contribute to the project by `forking the project `_ then creating a `pull request `_, or just `browse the source code `_.
The documentation needs some work stiil. Feel free to contribute :)
Features
========* Support for Python 2.7+ and Python 3.3+.
* Static visualizations of the call graph using various tools such as Graphviz and Gephi.
* Execute pycallgraph from the command line or import it in your code.
* Customisable colors. You can programatically set the colors based on number of calls, time taken, memory usage, etc.
* Modules can be visually grouped together.
* Easily extendable to create your own output formats.Quick Start
===========Installation is easy as::
pip install pycallgraph
You can either use the `command-line interface `_ for a quick visualization of your Python script, or the `pycallgraph module `_ for more fine-grained settings.
The following examples specify graphviz as the outputter, so it's required to be installed. They will generate a file called **pycallgraph.png**.
The command-line method of running pycallgraph is::
$ pycallgraph graphviz -- ./mypythonscript.py
A simple use of the API is::
from pycallgraph import PyCallGraph
from pycallgraph.output import GraphvizOutputwith PyCallGraph(output=GraphvizOutput()):
code_to_profile()Documentation
=============Feel free to browse the `documentation of pycallgraph `_ for the `usage guide `_ and `API reference `_.