Skip to main content

Draw a graph of your data to see the structure of its references.

Project description

Graph your Memory

Want to draw a graph of your data in Python to better understand its structure or the Python memory model in general?

Just call "memory_graph.show(your_data)", an example:

import memory_graph

data = [ (1, 2), [3, 4], {5:'five', 6:'six'} ]
memory_graph.show( data )

This shows the graph with the starting point of your 'data' drawn using thick lines, the program blocks until the key is pressed.

image

If show() doesn't work well on your system (the PDF viewer integration is platform specific) use render() to output the graph in the format of your choosing. Use block=False to turn off blocking.

memory_graph.render( data, "my_graph.png", block=False)

Larger Example

This larger example shows objects that share a class (static) variable and also shows a recursive reference.

import memory_graph

my_list = [10, 20, 30]

class My_Class:
    my_class_var = 1000 # class variable: shared by different objects
    
    def __init__(self):
        self.var1 = "foo"
        self.var2 = "bar"

obj1 = My_Class()
obj2 = My_Class()

data=[my_list, my_list, obj1, obj2]

my_list.append(data) # recursive reference

memory_graph.show( data )

image

Install

Install using pip:

pip install memory-graph

Author

Bas Terwijn

Inspiration

Inspired by PythonTutor.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

memory_graph-0.1.1.tar.gz (7.0 kB view hashes)

Uploaded Source

Built Distribution

memory_graph-0.1.1-py2.py3-none-any.whl (8.1 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page