DEV Community

Diego Pessoa
Diego Pessoa

Posted on

How to create and plot graphs in Python

Step 1: Install the python-igraph package

To get started, you'll need to install the python-igraph package. You can do this by running the following command in your terminal:

pip install python-igraph
Enter fullscreen mode Exit fullscreen mode

Step 2: Import the necessary modules

Once you have installed the package, you need to import the required modules in your Python script. You will typically need the igraph module and the plot module for visualization. Include the following lines at the beginning of your script:


import igraph as ig
from igraph import plot
Enter fullscreen mode Exit fullscreen mode

Step 3: Create a graph object

To create a graph, you can start by initializing an empty Graph object. You can then add vertices and edges to this object to define the structure of your graph. Here's an example that creates a simple graph with three vertices and two edges:

# Create an empty graph
g = ig.Graph()

# Add vertices
g.add_vertices(3)

# Add edges
g.add_edges([(0, 1), (1, 2)])

# Print the graph
print(g)
Enter fullscreen mode Exit fullscreen mode

Step 4: Visualize the graph

Now that you have created the graph, you can visualize it using the plot module. The plot function takes the graph object as input and generates a visualization of the graph. You can save the plot to a file or display it directly. Here's an example that saves the plot as a PNG image:

plot(g, "graph.png")
Enter fullscreen mode Exit fullscreen mode

Step 5: Customize the graph appearance

You can further customize the appearance of the graph by modifying various attributes. For example, you can change the color, shape, and size of the vertices, as well as the color and width of the edges. Here's an example that demonstrates some customization options:

# Customize vertex attributes
g.vs["color"] = "blue"
g.vs["size"] = 20
g.vs["shape"] = "square"

# Customize edge attributes
g.es["color"] = "red"
g.es["width"] = 2

# Create the plot
plot(g, "graph.png")
Enter fullscreen mode Exit fullscreen mode

These are just a few examples of what you can do with python-igraph. The package offers many more functionalities for working with graphs, including various graph algorithms and community detection methods.

Top comments (0)