A library to display and manipulate graphs on a tkinter canvas.
Project description
tkCanvasGraph is a Python library that implements a tkinter canvas on which users can display and manipulate graphs.
The documentation is available on http://tkCanvasgraph.readthedocs.io/.
A small example of its usage:
import tkinter
from tkCanvasGraph import CanvasFrame, Vertex, Edge
root = tkinter.Tk()
frame = CanvasFrame(root)
frame.pack(fill="both", expand=True)
v1 = Vertex(frame.canvas, label="vertex1")
frame.canvas.add_vertex(v1)
v2 = Vertex(frame.canvas, label="vertex2")
frame.canvas.add_vertex(v2)
edge = Edge(frame.canvas, v1, v2, label="edge")
frame.canvas.add_edge(edge)
root.mainloop()
It creates a new tkinter window, fills it with a CanvasFrame (a tkinter frame containing a tkCanvasGraph frame.canvas, but also buttons to apply layouts, and scrollbars), then add two vertices and one edge.
Another example is the tkCanvasGraph/__main__.py file:
python -m tkCanvasGraph
It opens a similar window with additional functionalities:
new vertices can be created with CTRL + left click,
new edges by maintaining CTRL and dragging and dropping the mouse from one vertex to another,
elements can be deleted with CTRL + right click,
labels can be modified by right-clicking on any element,
“j” key will create a new vertex in a random position,
“k” key will create a new edge between two vertices without an edge,
“o” key will apply one step of the force based layout.
Look at the code to get more insight on how to use the library.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file tkCanvasGraph-1.0.tar.gz
.
File metadata
- Download URL: tkCanvasGraph-1.0.tar.gz
- Upload date:
- Size: 19.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7709ee89b82213516963c050eb0ee4224dd471bc91cce79772a1acfa2acdb5f6 |
|
MD5 | e087359e43f613e8788c43a54fcdd90c |
|
BLAKE2b-256 | 838796441ed06b77bbc91c23291a082cb418f5637c6750296d7feee775bf3a66 |