用途:NetworkX 是 Python 包,用于创建、操作和分析复杂网络与图,适合处理社交网络、生物网络、交通系统、引文网络、知识图谱等实体间关系系统。
主要能力:支持四类图——Graph(无向单边)、DiGraph(有向单边)、MultiGraph(无向多重边)、MultiDiGraph(有向多重边)。节点可为任意可哈希对象。可计算中心性(度中心性、介数中心性、PageRank)、最短路径、连通分量、聚类、社区检测(如贪心模块度社区)等算法,并内置 Dijkstra、最小生成树、最大流等标准算法。提供经典图(完全图、环图、Karate Club 等)、随机网络(Erdős-Rényi、Barabási-Albert、Watts-Strogatz)与结构化网络(网格、随机树)生成器。支持边列表、GraphML、GML、JSON、CSV、邻接矩阵、Pandas、NumPy、SciPy 稀疏矩阵等读写;可与 matplotlib 结合绘图,并支持 Plotly、PyVis 交互式可视化。
使用方式:先安装,如 uv pip install networkx[default];常用流程为创建或载入图、检查结构(节点数、边数、密度、连通性)、计算指标与路径、可视化、导出结果(GraphML、CSV 等)。随机图生成与力导向布局应设置随机种子以保证可复现。
限制:浮点精度会令结果近似,影响最值计算;脚本运行时图数据须载入内存,大网络需用稀疏矩阵、子图或 pickle/压缩格式,并可选用近似算法;文档未提供收费、价格与平台信息。