问题标签 [quickgraph]

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.

0 投票
1 回答
758 浏览

c# - QuickGraph 广度优先搜索

我正在使用 QuickGraph 库,我需要一种方法来获取从顶点到自身的距离或路线。我的图表是有向和加权的,它也可以是循环的。我已经读过我需要使用 bfs 但我看不到 BFS 的任何实现。

你知道我怎么能做到这一点吗?

0 投票
0 回答
327 浏览

c# - 如何在 QuickGraph 中进行反向遍历?

我在 C# 中使用 QuickGraph 并有一个图,我可以通过在节点上调用 Compute 来遍历该图并沿图向下遍历。但是,有时我想选择一个子节点并沿所有边的相反方向遍历。

文档真的很差,所以我想知道是否有人知道如何做到这一点。

这是一个例子

如果我计算“node1”,我得到 node2、node3、node4。

我还想做的是计算“node4”并得到node2,node1

0 投票
0 回答
57 浏览

c# - 无法使用 GraphMLExtensions 序列化具有基类和派生类属性的 Graph

我有一个使用快速图形(NuGet 包)的图形自定义实现。当我尝试使用GraphMLExtensions序列化此图形对象时,我只能序列化基类属性,但不能同时序列化基类和派生类。

请帮我解决这个问题。

提前致谢。

0 投票
1 回答
265 浏览

c# - 带有来自 NuGet 的 QuickGraph 包的 C#

我在尝试使用QuickGraph包的 AdjacencyGraph 类时遇到问题。请允许我先显示我的代码,然后描述问题:

在此处输入图像描述

我正在使用正确的(?)导入,嗯,“使用”。但是,编译器仍然不知道我指的是哪个类。从QuickGraph.Contracts或从QuickGraph

这是最后一个屏幕截图,它更多地说明了这个问题:

在此处输入图像描述

0 投票
1 回答
515 浏览

algorithm - 简化 Quickgraph 中的功能和良好的文档?

我正在弄清楚 Quickgraph 是否对我的问题有益(F# 项目)。它是否具有图形缩减功能/算法?类似于 Matlab 的简化函数

此外,我在查找 Quickgraph 的体系结构文档(主体和数据结构)和快速入门的教程方面遇到了麻烦。似乎从中移植的 BoostGraph 也是如此。有什么建议么?

问候, WP

0 投票
0 回答
167 浏览

c# - 替换 Quickgraph 中的顶点 (C#)

我想替换我的 BidirectionalGraph 的顶点的值或顶点本身。图表本身不应改变。这意味着连接到顶点的所有边在我更改它的值后都保持连接到顶点。如果他们在快速图中没有简单的方法来接近它,我会感到惊讶。

我的代码很长,所以我尝试用示例代码来描述它。

这里的函数 GenerateTestGraph() 只生成一个简单的示例图。我的目标是更改图中某些顶点值的索引值。所以我想生成一些函数来改变我的图表的值。他们是一个简单的方法吗?还是我必须使用新索引重新生成图形本身?

所以我改变了这个图: Inputgraph (example)

进入这个: Outputgraph(示例)

0 投票
1 回答
119 浏览

c# - 按连接度划分的图

GraphPartition截图

我想问一下是否已经有用于将图划分为子图的算法,如随附的屏幕截图:

图有边 AB、BC、CD、DE、CF、FG

我需要将它划分为 3 个部分,因为顶点 C 的度数为 3:ABC CDE CFG

首先,我认为我可以使用典型方法删除 C 节点并断开图。但也许有已知的方法来按节点度划分图?

0 投票
1 回答
1017 浏览

c# - 在 C# 中创建非常大的边和顶点图

我正在尝试绘制社交网络

例如,我有一个人 A,他有 5 个追随者,这些追随者和这个人将由一个顶点表示,然后有一条边连接它们。最有可能的是,其中至少有一半是相互关注的,形成了一个大的“网络”。

我尝试在 QuickGraph 中执行此操作,但是遇到了一些问题:

  1. 该图最终看起来更像是一个流程图而不是一个网络,来自 QuickGraph 前面的示例:

在此处输入图像描述

  1. 当我用真实数据进行测试时,图表就变成了一个巨大的、滞后的、意大利面条般的墨水

创建这种图表的最佳方法是什么?

作为参考,我希望制作一个如下所示的图表:

在此处输入图像描述

0 投票
0 回答
135 浏览

c# - C# QuickGraph - 平面图遍历 - 面

有没有办法使用 C# 的 QuickGraph 来查找图形的面,类似于 Boost C++ 图形库中的平面面遍历函数?

https://www.boost.org/doc/libs/1_51_0/libs/graph/doc/planar_face_traversal.html

0 投票
1 回答
261 浏览

c# - 了解 QuickGraph ShortestPathsDijkstra 结果

我有一张图,想用 Dijkstra 算法进行一些最短路径搜索(我并不真正关心算法,但 dijkstra 是我熟悉的算法)。

这是我拥有的图表的相关部分:

在此处输入图像描述

现在我按照 Quickgraph 文档进行 dijkstra 搜索:

如您所见,我试图获得节点 20 和 23 之间的最短路径。我得到的输出是

这似乎是对的,但我真的不明白如何从中提取节点路径。我期待的是:

如何从此输出构建最终路径?


从 20 到 34 的示例:

注意36->11在最后一条边之前是如何出现的。