问题标签 [graph-tool]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 图形工具 - 从熊猫数据框中读取边缘列表
我开始使用graph-tool,从 pandas 数据框中导入边列表,df
例如:
所以基本上是有向边的列表。我根据教程将它们导入图形工具:
根据 add_edge_list( edge_list ) 的文档: edge_list可能是形状为 (E,2) 的 ndarray,其中 E 是边数,每行指定一个 (source, target) 对。
运行上述代码设置edge_list = df.values,并绘制图形,我得到:
这不是数据帧的原始edge_list的表示。我试图设置*edge_list* = df.values.tolist()
:
获得:
这实际上是正确的。任何人都可以重现这个?这里的问题是我正在使用巨大的网络(〜4 * 10 ^ 6节点),我认为该.tolist()
方法会在此过程中浪费大量内存。
编辑:添加用于绘制图形的代码:
python-2.7 - 使用图形工具查找 k 最短路径
我有一个有向图,我试图找到前 k 个最短路径。目前我已经在图形工具中实现了网络,它提供了最短路径算法,但据我所知没有 k 最短路径算法。我遇到过这篇文章(使用 graph_tool 的所有最短路径),但我毕竟不是连接两个节点的路径。
NetworkX 似乎为此实现了一个功能(https://networkx.readthedocs.org/en/stable/reference/generated/networkx.algorithms.shortest_paths.generic.all_shortest_paths.html?highlight=all_shortest_paths)。有没有办法在图形工具中以某种方式做到这一点,或者我最好切换工具箱并使用 NetworkX?
python - 安装两个版本的 Python 模块
我目前正在使用模块(图形工具)的当前版本(v1.12)。然而,目前正在开发的版本(v1.13)也可以通过 Git 获得,其中包含一些在发布版本中未实现的功能。我想使用这些功能,但由于我不知道它运行的稳定性如何,我不确定是否要覆盖当前安装的版本。据我所知,开发版本必须从源代码编译。我知道一旦我编译它并将它安装在我的硬盘驱动器上,我可以以不同的名称将它导入 python,但是如何在不覆盖旧版本文件的情况下编译它?我正在使用 Ubuntu 14.04。
python-2.7 - 图形工具的 Git 版本 (1.13) 中没有可用的“配置”
我已经从 Git ( https://git.skewed.de/count0/graph-tool ) 下载了 graph-tool v1.13。该INSTALL
文件指示我./configure
在源代码目录中运行,但该configure
文件不存在。我需要做什么来安装它?
编辑:如果我autoconf
在目录中运行,我会收到以下消息:
我不完全确定如何处理这些消息或者它们是否是预期的行为,但如果我运行由此创建的configure
文件,它会返回以下错误:
gcc - configure 需要 C++14 支持,但 gcc -v = 4.9.3
我目前正在从 Git 版本编译 graph-tool v1.13。我已经设法从中生成configure
文件,autogen.sh
但现在遇到了麻烦。
运行./configure
我收到消息:
我已经检查gcc -v
并g++ -v
收到了回复gcc version 4.9.3 (Ubuntu 4.9.3-8ubuntu2~14.04)
。据我所知,这应该支持 C++14,那么我哪里出错了?我正在运行 Ubuntu 14.04。
boost - 从源代码编译图形工具 - 找不到可用的 boost::coroutine
我目前正在从源代码编译 v1.13 dev。我已经使用autogen.sh
. 我现在正在使用该命令运行配置脚本,./configure --enable-openmp CXX='g++-5'
但这会返回错误configure: error: No usable boost::iostreams found
。我不记得在编译 v1.12 时遇到过这个错误,但也许我只是不记得了。我检查了使用 Anaconda 安装的 boost 版本,它告诉我它是最新的,所以我认为我可能只需将脚本指向正确的位置,但还没有找到适合我在线的解决方案。我在这里可能做错了什么?
这似乎是 config.log 中的相关条目:
编辑:重新安装 boost usingapt-get install libboost-all-dev
意味着我可以运行 configure 但现在我收到以下警告:
python-2.7 - 图形工具 - k 最短路径 - 编译时未找到 boost::coroutine
我试图在我的有向图中找到两个节点之间的 k 个最短路径。为此,我运行以下代码片段:
这将返回以下错误:
关于为什么会出现这种情况以及如何解决问题的任何想法?
python - 在 ubuntu 14.04 上安装图形工具时配置错误
所以我花了一整天的时间试图找出解决方案。我正在尝试在具有 14.04 操作系统的机器上安装图形工具。最初我无法成功,因为我的机器上没有 gcc 5。安装后,我正在尝试以下操作:
我收到以下错误:
我在 graph-tool 或 stackoverflow 的邮件列表中看不到有关此问题的解决方案。如果有人可以帮助我,我将不胜感激。
提前致谢。
makefile - 即使在创建交换文件后也无法编译图形工具
我正在尝试在具有 4GB RAM 的笔记本电脑上安装图形工具。我意识到 RAM 不够用,因此我使用此处给出的说明创建了一个 4GB 大小的交换文件。但是,之后我仍然不断收到以下错误sudo make
:
我无法理解这个问题。我需要告诉系统使用交换文件中的内存的任何特定方式吗?
提前致谢。