IRONSOFTWAREHOME
AJUDA DO PYTHON

igraph em Python (Como funciona para desenvolvedores)

Curtis Chau
Curtis Chau
Updated: 21 de abril de 2026

Grafos e pesquisas sobre redes complexas são noções básicas da ciência da computação e da matemática usadas para modelar ligações e interações complexas. Os nós, também chamados de vértices, e as arestas, também chamadas de ligações, de um grafo são, em essência, meras representações e interpretações visuais de uma entidade e seus relacionamentos, mostradas por meio das arestas que conectam os nós.

De forma mais geral, todos os grafos usados ​​para sistemas de transporte, redes sociais e redes de comunicação são considerados redes. Ao analisar grafos e redes, podemos compreender e superar problemas relacionados à conectividade, ao fluxo e à estrutura da rede. Esse trabalho oferece uma visão sobre uma diversidade de áreas, desde a dinâmica social e a estrutura organizacional até algoritmos para roteamento e otimização eficientes. Esses conceitos são fundamentais na teoria de redes, na pesquisa operacional e na ciência de dados.

Neste artigo, usamos o igraph para mostrar como você pode gerar gráficos de rede e imprimi-los em um arquivo PDF usando a biblioteca IronPDF, que é flexível e confiável.

O que é igraph?

Igraph é um pacote Python robusto para gerar, manipular e analisar grafos e redes complexas. Oferece um conjunto de ferramentas enorme para lidar com grafos, desde a geração até a manipulação e visualização. A biblioteca igraph do Python facilita a implementação de análises de redes por meio de diversos algoritmos que calculam várias métricas de centralidade, caminhos mais curtos, estrutura de comunidades e muito mais.

Essa biblioteca proporciona, portanto, uma boa visualização com layouts e propriedades adaptáveis ​​para grafos direcionados e não direcionados. O iGraph é muito flexível e rápido, sendo frequentemente encontrado em aplicações para análise de dados relacionais complexos, como em ciência de dados, biologia computacional e estudos de redes sociais.

igraph python (Como Funciona para Desenvolvedores): Figura 1 - Página da Igraph

Configurando e usando o pacote igraph do Python

Para começar a aprender operações e configurações fundamentais da teoria dos grafos em Python, siga os passos abaixo para criar, configurar e usar o igraph.

Instalando o pacote igraph

Primeiro, você precisa instalar o pacote igraph. O seguinte comando pip pode ser usado para isso:

pip install igraph
SHELL

Criando um gráfico usando o iGraph

Aqui está um exemplo simples para mostrar como usar o igraph para construir e configurar um grafo:

from igraph import Graph, plot

# Create an empty graph
g = Graph()

# Add vertices (nodes)
g.add_vertices(5)  # Adding 5 vertices

# Add edges (connections between vertices)
g.add_edges([(0, 1), (1, 2), (2, 3), (3, 4), (4, 0), (0, 2)])  # Adding edges

# Add vertex ids and edge attributes
g.vs["name"] = ["A", "B", "C", "D", "E"]  # Vertex labels
g.es["weight"] = [1, 2, 3, 4, 5, 6]  # Edge weights

# Print basic graph structural properties
print("Number of vertices:", g.vcount())
print("Number of edges:", g.ecount())
print("Graph summary:", g.summary())
Python

Saída do console

igraph python (Como Funciona para Desenvolvedores): Figura 2 - Saída do console do exemplo de código

Configurar o layout e a visualização do gráfico

Podemos desenhar o gráfico usando alguns dos recursos integrados do igraph. Altere a aparência e o layout da seguinte forma:

# Define a layout for the graph
layout = g.layout("circle")  # Layout in a circular arrangement

# Plot the graph with labels and custom options
plot(
    g,
    layout=layout,
    vertex_label=g.vs["name"],  # Label vertices
    vertex_color="lightblue",   # Vertex color
    edge_width=g.es["weight"],  # Edge width based on weight
    vertex_size=30,             # Vertex size
    edge_color="grey",          # Edge color
    bbox=(300, 300),            # Size of the plot
    margin=20                   # Margin around the plot
)

# Save the plotted graph to a file
plot(g, layout=layout, bbox=(300, 300), margin=20).save('exampleGraph.png') 
Python

Gráfico de saída

Abaixo está a imagem de um gráfico simples que foi gerada com a ajuda da biblioteca Matplotlib e das ligações Python da biblioteca Cairo.

igraph python (Como Funciona para Desenvolvedores): Figura 3 - Gráfico gerado

Operações avançadas com grafos

Realizar diversas operações e análises em grafos, como calcular a centralidade, encontrar comunidades ou identificar os caminhos mais curtos:

# Calculate degree centrality for each vertex
degrees = g.degree()
print("Degrees of vertices:", degrees)

# Compute shortest path between two vertices that don't have a predefined distance
shortest_path = g.shortest_paths_dijkstra(source=0, target=3)
print("Shortest path from vertex 0 to 3:", shortest_path)

# Detect communities using the Louvain method
communities = g.community_multilevel()
print("Detected communities:", communities)
Python

Saídas do console

igraph python (Como Funciona para Desenvolvedores): Figura 4 - Saída do console dos cálculos anteriores

Apresentando o IronPDF

igraph python (Como Funciona para Desenvolvedores): Figura 5 - Página da IronPDF

Podemos até gerar e editar PDFs programaticamente usando o módulo IronPDF do Python. Com esta biblioteca, você terá uma enorme capacidade de criar documentos PDF a partir de HTML, mesclar dois ou mais documentos PDF e até mesmo usar PDFs existentes e modificá-los para incluir texto, fotos e anotações. O IronPDF permite gerar PDFs de qualidade profissional a partir de qualquer site HTML ou conteúdo da Web, sendo ideal para gerar relatórios, faturas e outros documentos com estilos predefinidos.

Algumas de suas funcionalidades avançadas incluem edição de layouts de página, criptografia de documentos e extração de texto de um PDF. Isso ajudará os desenvolvedores a estarem em melhor posição para aprimorar a utilidade geral de seus produtos, caso consigam lidar melhor com PDFs.

Instalando a biblioteca IronPDF

Você pode usar o seguinte comando para instalar os pacotes que permitem que a interface Python habilite os recursos do IronPDF para o seu projeto:

pip install ironpdf

Integrando o igraph com o IronPDF

Estes são os passos que você seguiria em Python para mesclar igraph e IronPDF: Primeiro, você criará um gráfico com igraph e o exibirá. Em seguida, converta a visualização resultante em um PDF.

from igraph import Graph, plot
import matplotlib.pyplot as plt
from ironpdf import ImageToPdfConverter, License
import warnings

# Suppress warnings for cleaner output
warnings.filterwarnings('ignore')

# Ensure that you have replaced the string with your own license key
License.LicenseKey = "YOUR LICENSE KEY GOES HERE"

# Create an empty graph
g = Graph()

# Add adjacent vertices (nodes)
g.add_vertices(5)  # Adding 5 vertices

# Add edges (connections between vertices)
g.add_edges([(0, 1), (1, 2), (2, 3), (3, 4), (4, 0), (0, 2)])  # Adding edges

# Add vertex and edge attributes
g.vs["name"] = ["A", "B", "C", "D", "E"]  # Vertex labels
g.es["weight"] = [1, 2, 3, 4, 5, 6]  # Edge weights

# Define a layout for the graph
layout = g.layout("circle")  # Layout in a circular arrangement

# Create a plot using matplotlib
fig, ax = plt.subplots()

# Plot the graph with specified layout and styles
plot(
    g,
    target=ax,
    layout=layout,
    vertex_label=g.vs["name"],  # Label vertices
    vertex_color="lightblue",   # Vertex color
    edge_width=g.es["weight"],  # Edge width based on weight
    vertex_size=30,             # Vertex size
    edge_color="grey",          # Edge color
    bbox=(300, 300),            # Size of the plot
    margin=20                   # Margin around the plot
)

# Save the plot as a PNG image
plt.savefig('result.png')

# Convert the image to a PDF file
ImageToPdfConverter.ImageToPdf('result.png').SaveAs("result.pdf")
Python

Este script irá gerar um gráfico usando o igraph, visualizá-lo com o matplotlib e, em seguida, usar o IronPDF para converter o gráfico em um PDF. Este código importará todas as bibliotecas necessárias e configurará o IronPDF com uma chave de licença. Crie um grafo vazio com cinco vértices e seis arestas e adicione pesos e rótulos para maior clareza.

O gráfico é disposto circularmente e a plotagem envolve o matplotlib com diversas propriedades de visualização, como cor e tamanho dos vértices e largura das linhas das arestas. Depois disso, o resultado—como um arquivo de imagem, result.png, é salvo. Finalmente, é transformado em um PDF, result.pdf, com o ImageToPdfConverter da IronPDF. A criação de gráficos, a visualização e a produção de PDFs são combinadas em um único fluxo de trabalho.

PDF gerado

igraph python (Como Funciona para Desenvolvedores): Figura 6 - PDF gerado

Licenciamento

É necessária uma chave de licença para que o código funcione sem marca d'água. Você pode se cadastrar para uma licença de avaliação gratuita neste link . Note que você pode se inscrever sem fornecer comprovante de identidade. Para se cadastrar na versão de avaliação gratuita, basta inserir seu endereço de e-mail.

igraph python (Como Funciona para Desenvolvedores): Figura 7 - Plano de licenciamento do IronPDF

Conclusão

Com o poder do IronPDF e do igraph, você pode desenvolver soluções para visualizar e apresentar dados gráficos complexos. Com o igraph, você pode criar e analisar redes complexas com facilidade, enquanto utiliza o IronPDF para a conversão perfeita de visualizações de dados em documentos PDF de nível profissional. A combinação desses esforços ajudará você a desenvolver relatórios abrangentes, incluindo análises gráficas e representações visuais.

Essa integração possibilita o desenvolvimento de diversas aplicações que exigem documentação de rede abrangente, incluindo pesquisa acadêmica, análise de negócios e relatórios baseados em dados. Além disso, combina a geração de documentos de alta qualidade com recursos de manipulação gráfica muito poderosos. Para completar, o Iron Software oferece diversas bibliotecas, facilitando o desenvolvimento de aplicativos para uma variedade de plataformas e sistemas operacionais, como Windows, Android, macOS, Linux e outros.

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais bem estruturados e visualmente atraentes.

...
Leia mais

Artigos relacionados

Key in blue circle

Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.

Your trial license will be sent to your email address

Sem limitações. 100% desbloqueado. Sem cartão de crédito.

bullet_checkedNão é necessário cartão de crédito nem criação de conta.Sem limitações. 100% desbloqueado. Sem cartão de crédito.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Agende sua demonstração ao vivo gratuita.
Booking Badge

Aprovado por milhões de engenheiros em todo o mundo.

Logotipos dos clientes da Iron Software
Agende sua consulta sem compromisso.
Preencha o formulário abaixo ou envie um e-mail para sales@ironsoftware.com
Os seus dados serão sempre mantidos em sigilo.
Aprovado por milhões de engenheiros em todo o mundo.
Logotipos dos clientes da Iron Software
Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.
Não é necessário cartão de crédito nem criação de conta.