Python NetworkX: библиотека для работы с графами

Python NetworkX - это библиотека для анализа и визуализации сложных сетей. Она предоставляет инструменты для работы с графами, диаграммами и топологиями.

Основные возможности NetworkX включают:

Примеры кода для создания и манипулирования графами:

1. Создание графа:

python
import networkx as nx
# создание пустого графа
G = nx.Graph()
# добавление вершин и ребер
G.add_edge('A', 'B')
G.add_edge('B', 'C')
G.add_edge('C', 'D')
G.add_edge('D', 'A')
# вывод списка вершин и ребер
print(G.nodes())
print(G.edges())

2. Анализ графа и расчет показателей центральности:

python
import networkx as nx
# загрузка графа из файла
G = nx.read_edgelist('graph.txt')
# расчет показателей центральности
degree_centrality = nx.degree_centrality(G)
closeness_centrality = nx.closeness_centrality(G)
betweenness_centrality = nx.betweenness_centrality(G)
# вывод результатов
print(degree_centrality)
print(closeness_centrality)
print(betweenness_centrality)

3. Генерация случайного графа:

python
import networkx as nx
# генерация случайного графа
G = nx.erdos_renyi_graph(100, 0.1)
# вывод количества вершин и ребер
print(G.order(), G.size())

4. Визуализация графа:

python
import networkx as nx
import matplotlib.pyplot as plt
# создание графа
G = nx.Graph()
G.add_edge('A', 'B')
G.add_edge('B', 'C')
G.add_edge('C', 'D')
G.add_edge('D', 'A')
# визуализация графа
pos = nx.spring_layout(G)
nx.draw_networkx_nodes(G, pos)
nx.draw_networkx_edges(G, pos)
nx.draw_networkx_labels(G, pos)
plt.show()

Это только небольшая часть возможностей NetworkX, однако она является мощной и гибкой библиотекой для работы со сложными сетями.

Похожие вопросы на: "python networkx "

Docker Build: Ускорение разработки и доставки программного обеспечения
Pretty JSON - удобный способ визуализации и проверки файлов JSON
Telegram бот на PHP
XHR (XMLHttpRequest) – основы и использование в JS
Java Random в диапазоне: руководство по генерации случайных чисел в Java
Oculus Developer Hub
<h1>Zoomify - лучший инструмент для масштабирования и панорамирования изображений
Отказано в доступе exception from hresult 0x80070005
Inline Flex - гибкий подход к расположению элементов на сайте
Объект в массив PHP: советы и примеры