一个用Rust编写的高性能、通用的Python图库。
安装完成后,只需导入rustworkx
即可。
所有图类和顶层函数都可以通过单个导入访问。
为了说明这一点,以下示例计算了无向图中节点A
和C
之间的最短路径。
import rustworkx # Rustworkx的无向图类型 graph = rustworkx.PyGraph() # 每次调用add_node时,都会返回一个新的节点索引 a = graph.add_node("A") b = graph.add_node("B") c = graph.add_node("C") # add_edges_from接受节点索引和权重的元组, # 并返回边索引 graph.add_edges_from([(a, b, 1.5), (a, c, 5.0), (b, c, 2.5)]) # 返回路径 A -> B -> C rustworkx.dijkstra_shortest_paths(graph, a, c, weight_fn=float)
rustworkx已发布在PyPI上,因此在x86_64、i686、ppc64le、s390x和aarch64 Linux系统、Mac OSX上的x86_64以及32位和64位Windows上,安装非常简单,只需运行:
pip install rustworkx
这将在您的Python环境中安装一个预编译版本的rustworkx。
如果您的系统没有发布预编译的二进制文件,您需要从源代码构建包。然而,要能够从发布的源代码包构建,您需要安装Rust >= 1.70(以及通常随Rust一起提供的cargo)。您可以使用rustup(一个跨平台的Rust安装程序)来简化这个过程,或者依赖于其他安装方法。源代码包也发布在PyPI上,所以您仍然可以运行上述pip
命令来安装它。一旦您正确安装了Rust,运行:
pip install rustworkx
将从源代码包构建适用于您本地系统的rustworkx并安装它,就像有预构建的二进制文件可用一样。
[!注意]
要从源代码构建,您需要确保安装了支持PEP-517的pip 19.0.0或更高版本,或者在运行pip install rustworkx
之前手动安装了setuptools-rust
。如果您收到有关找不到setuptools-rust
的错误,应该使用pip install -U pip
升级pip,或者使用pip install setuptools-rust
手动安装setuptools-rust
,然后重试。
如果您计划使用rustworkx.visualization
模块,您需要安装可选依赖项来使用这些函数。基于matplotlib的绘图函数rustworkx.visualization.mpl_draw
需要安装matplotlib库。可以通过pip install matplotlib
安装,或在安装rustworkx时使用pip install 'rustworkx[mpl]'
安装。如果您要使用基于graphviz的绘图函数rustworkx.visualization.graphviz_drawer