directed-graph相关内容

有向图中的深度优先搜索?

我有一个小数字数组。[4,1,2,5,3,6,8,7] 我的图表的设置方式是,数组中的每个数字都指向数组中比它后面更大的所有数字。(4指向5、6、8和7.3。3指向6、8、7等。)我将这些数字输入到图表中,使用邻接列表绘制出所有的边。我正在尝试使用某种深度优先搜索法来找出从图中的任何起点开始的最长路径的长度。我只是在开始和设置遍历时遇到了一些问题,特别是因为稍后我想使用相同的图来处理更大的随 ..
发布时间:2022-09-23 22:44:55 Java开发

如何使用非树数据创建 d3.js 可折叠力布局?

我有一个 d3 力导向布局,其中数据的结构与下面类似.是否可以应用可折叠力布局,例如 http://bl.ocks.org/mbostock/1062288要吗?我想要一个节点在点击时折叠/展开. {“节点":[{“x":469,“y":410},{“x":493,“y":364},{“x":442,“y":365},{“x":467,“y":314},],“链接":[{“源":0,“目标":1 ..

GraphViz - 如何连接子图?

在 GraphViz 的 DOT 语言中,我试图表示一个依赖关系图.我需要能够在容器内拥有节点,并且能够使节点和/或容器依赖于其他节点和/或容器. 我使用 subgraph 来表示我的容器.节点链接工作正常,但我不知道如何连接子图. 鉴于下面的程序,我需要能够使用箭头连接 cluster_1 和 cluster_2,但是我尝试过的任何操作都会创建新节点而不是连接集群: 二合字母 G ..
发布时间:2021-12-30 18:25:55 其他开发

Python networkx 和持久性(可能在 neo4j 中)

我有一个应用程序,每秒在内存中创建数千个图形.我希望找到一种方法来保留这些以供后续查询.它们并不是特别大(也许最大 ~1k 个节点). 我需要能够存储整个图形对象,包括节点属性和边属性.然后,我需要能够根据节点中的时间属性在特定时间窗口内搜索图形. 是否有一种简单的方法可以将这些数据强制转换为 neo4j ?我还没有找到任何这方面的例子.虽然我发现了几个 python 库,包括一个嵌入 ..
发布时间:2021-12-28 17:51:06 Python

是否有一个库在 C++ 中提供(有向)超图实现?

我目前正在开展一个项目,该项目使用有向超图框架枚举动态程序的 k-best 解决方案.我当前的实现(在 Python 中)运行良好,但速度相当慢.该算法执行许多紧密循环和相当多的递归.我真的认为我可以使用 C++ 实现实现显着的速度改进.但是,经过一番搜索后,我找不到任何在 C++ 中提供超图实现的库(特别是有向超图——但我什至找不到用于无向超图的库).有人知道这样的图书馆吗?几年前似乎有一个 G ..
发布时间:2021-12-24 14:57:21 C/C++开发

在 Python3 中使用 NetworkX 创建曲线边缘

我想使用networkx(如果你知道更好的框架,我也想采用另一个框架)来创建一个节点位于固定位置的graps.同时图的边不应该重叠. 我之前的代码是这样的: #!/usr/bin/env python3将 networkx 导入为 nx导入 matplotlib.pyplot 作为 plt# 图形数据名称 = ['A'、'B'、'C'、'D'、'E']位置 = [(0, 0), (0, 1 ..
发布时间:2021-12-24 14:55:53 Python

Graphviz 点算法

Graphviz 库中是否有关于 dot 算法的文档(完整的伪代码?)? 我只找到了部分伪代码文档. 解决方案 这里有一些参考资料供您参考.最完整的(缺少 Graphviz 源代码本身)可能是 #2,论文“A Technique"用于绘制有向图"这是由几位 Graphviz 贡献者自己编写的. (1)“用点画图" 在用点绘制图形中,点的布局算法是这样描述的: dot 在 ..
发布时间:2021-12-24 14:32:31 其他开发

查找图实现中的所有循环

我找到了一种简单的算法,可以在此处的图表中找到所有循环.我也需要打印出循环,这个算法可以吗?请在下面找到代码. 我正确地获得了周期数! node1, node2 是整数.访问的是一本字典 def dfs(self,node1, node2):如果 self.visited[node2]:如果(节点 1 == 节点 2):self.count += 1打印节点2返回self.visit ..
发布时间:2021-12-24 14:29:14 Python

如何检测有向图是否循环?

我们如何检测有向图是否有环?我想使用广度优先搜索,但我不确定.有任何想法吗? 解决方案 通常使用深度优先搜索来代替.不知道BFS好不好用. 在DFS中,生成树是按照访问顺序构建的.如果访问了树中节点的祖先(即创建了后边缘),则我们检测到一个循环. 参见 http://www.cs.nyu.edu/courses/summer04/G22.1170-001/6a-Graphs-M ..

networkx 有向图属性错误 self._succ

上下文:我正在尝试运行另一位研究人员的代码 - 它描述了湾区道路网络的交通模型,该模型易受地震危害.我是 Python 新手,因此非常感谢您帮助调试以下错误. 问题:当我按照 README 中的说明尝试运行随文件提供的示例数据的代码时,出现以下错误. DN0a226926:quick_traffic_model gitanjali$ python mahmodel_road_only.py ..
发布时间:2021-11-30 15:27:45 Python

检测有向图中循环的最佳算法

检测有向图中所有环的最有效算法是什么? 我有一个表示需要执行的作业时间表的有向图,一个作业是一个节点,一个依赖项是一个边.我需要检测导致循环依赖关系的图中循环的错误情况. 解决方案 Tarjan's strong连通分量算法具有O(|E| + |V|)时间复杂度. 有关其他算法,请参阅维基百科上的强连通分量. ..
发布时间:2021-11-26 23:53:28 其他开发

不能满足所有需求的最小成本的最大流量

我正在使用 NetworkX 来解决具有多个源和接收器的最大流量问题.我发现了一个在 NetworkX 中运行相对较好的函数,名为 max_cost_flow 但是我遇到的问题是它要求净需求为零,换句话说,没有接收器应该小于需要,否则会报错. 我可以使用什么(或如何修改此算法)来让它计算出可能的最佳流量,而不必满足所有条件? 根据克拉斯克维奇的建议: 将 networkx 导入为 n ..

有向图遍历 - 所有路径

给定一个带有 的有向图 一个根节点 一些叶子节点 多个节点可以连接到同一个节点 循环可以存在 我们需要打印从根节点到所有叶子节点的所有路径.这是我对这个问题最接近的问题查找两个图节点之间的所有路径 解决方案 如果您真的关心从最短路径到最长路径的路径排序,那么使用修改后的 A* 或 Dijkstra 算法会好得多.稍作修改,算法将按照最短路径的顺序返回尽可能多的可能路径.因此 ..
发布时间:2021-09-09 19:30:19 其他开发

图中的循环检测

我们得到了一个图表,其中包含以下事实: edge(a,b)边(a,c)边(b,a)边(c,d)边(d,d)边(d,e)边(e,f)边(f,g)边(g,e) 我们被要求定义一个规则,cycle(X),它确定是否有一个从节点 X 开始的循环. 我真的不知道如何做到这一点,我尝试遍历节点并检查下一个节点是否会再次成为起始节点,但我似乎无法让它工作 解决方案 Archie 的想法是一个很 ..
发布时间:2021-06-22 18:50:50 其他开发

从多列熊猫数据框构建 networkx 有向图或流程图

我有包含 10 列的 Pandas 数据框. 每一行包含一个由用户执行的在线步骤.总共有 10 列,所以所有 10 步过程 假设第一个活动是预订机票,因此步骤是登录网站-->给src dest时间-->选座-->支付--review 所以每一步都可能发生各种排列,我想从所有数据集中绘制一个有向图. 目前networkx只支持2列 # 个库将熊猫导入为 pd将 numpy 导入 ..
发布时间:2021-06-07 19:54:09 Python

如何找到所有' long'图中的简单非循环路径?

假设我们有一个完全连接的有向图 G .顶点为 [a,b,c] .每个顶点之间在两个方向上都有边. 给出一个起始顶点 a ,我想在所有方向上遍历该图,并仅在碰到路径中已经存在的顶点时才保存路径. 因此,函数 full_paths(a,G)应该返回: -[{a,b},{b,c},{c,d}]-[{a,b},{b,d},{d,c}]-[{a,c},{c,b},{b,d}]-[{a,c},{ ..
发布时间:2021-05-13 19:07:08 其他开发

在NetworkX中重现相同的图形

我想改善我的图表.存在以下问题: 如何创建一致的图.每次我执行/运行代码时,图本身都不一致,它将生成不同的图像.网址中显示了不一致的图. 布局,可让您指定 seed .这是使用 nx的示例上图的.spring_layout : 从matplotlib中的 导入pyplot作为plt种子= 31pos = nx.spring_layout(G,种子=种子)plt.figure(fig ..
发布时间:2021-05-13 19:05:26 其他开发

有向概率图-减少周期的算法?

考虑一个有向图,该图从第一个节点 1 遍历到某些最终节点(没有更多的输出边).图中的每个边都有与之相关的概率.汇总将所有可能路径通向所有可能的最终节点的概率返回 1 .(这意味着,我们可以保证最终到达最后一个节点之一.) 如果图形中的循环不存在,问题将很简单.不幸的是,图中可能出现相当复杂的循环,可以遍历无数次(显然,每次循环遍历的概率都会成倍降低). 是否存在一种通用算法来找到到达每 ..
发布时间:2021-04-19 20:55:19 Java开发