问题标签 [subgraph]

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 回答
247 浏览

java - 节点加权图中的最大 N 节点连通子图

以这个节点加权图为例:

http://i.stack.imgur.com/DEYJD.png

  • 恰好包含 1 个节点(和“入口点”)的最大子图将是 14。
  • 恰好包含 2 个节点(和“入口点”)的最大子图将是 14 / 9。
  • 恰好包含 3 个节点(和“入口点”)的最大子图将是 3 / 19 / 15。
  • 恰好包含 4 个节点(和“入口点”)的最大子图将是 14 / 1 / 7 / 240。

我想不出比蛮力更好的方法来获得最大子图。
如果没有已知的有效算法,在这种情况下是否会找到遗传算法(交叉似乎很棘手)?

0 投票
1 回答
733 浏览

algorithm - 加权子图同构

我已经连续在互联网上搜索了大约两三天,但到目前为止还没有运气。

我知道在野外有很多用于子图同构的库和实现,但它们都适用于未加权图。例如,两种最流行的算法是 VF2 和 Uleman 算法。在这里,我的问题是:是否有任何方法可以给出一个图(G)和一个查询图(g),是否可以找到 g 是否是 G 的子图(并且同构)?(请注意,以下是图的边缘列表表示。)

在这种情况下,g 是一个子图并且与 G 同构,但是如果我们有这样的东西:

现在 g 不再是 G 的子图并且不是同构的。

更新:两个图都是无向的。

0 投票
1 回答
2414 浏览

orientation - Graphviz:控制节点在子图中对齐

考虑下面的子图,有 5 个 Mrecod 节点:

在此处输入图像描述

有没有办法强制垂直方向,节点彼此上方?我在子图中试过rankdir=TB了,没有效果。

我在没有特殊参数的 Ubuntu 下运行 graphviz:

0 投票
1 回答
672 浏览

c++ - 子图的图特征

我有一个图,我想将其类型更改为子图,以便能够将其划分为更多子图,从而使用 graphviz 获得更多的纵坐标打印。问题是当我将子图属性添加到我的图时,顶点描述符不再起作用。

修改前的代码:

将图改为子图后的代码:

问题是什么?我该如何解决?

0 投票
1 回答
834 浏览

javascript - 向 d3.js 图表添加/更新标签

我是 d3.js 的新手,我在语法上很挣扎。

我通常知道如何向图表添加标签......但不知道这段代码(我取自D3.js Force Layout - 只显示图表的一部分

我尝试了各种解决方案 [ .append("text"), enter().append("text")....] 但我没有成功。

这是我认为我必须更改某些内容的代码部分(并且,在代码下方,您会找到整个事情的 gihub 存储库)

https://github.com/coulmont/pornograph

0 投票
1 回答
400 浏览

algorithm - 尝试匹配相似图之间的节点

我正在寻找一种算法来匹配相似图中的节点。节点的数量不相等,但每个图确实代表同一个系统。

所以,我正在寻找相似或模糊的图形匹配或模式识别。

我从哪说起呢?

无向顶点标记的多图加权稀疏节点:2,172 边:3,000

节点有许多独立的属性。边有一个属性,类似于长度。两个图之间对应的节点和边的节点和边属性不相同。

这个问题在技术论文中被描述为部分同构、图对齐和最大公共子图

0 投票
1 回答
698 浏览

python - 在 NetworkX 中是否可以将节点定义为子图?

我在网上查了一下,但没有找到答案。

你们知道在 NetworkX 中是否可以将节点定义为子图?

让我更好地提出这个问题:我有一个由一些形状(正方形、圆形、三角形等)节点组成的图。我现在想将每个节点定义为一个子图。子图的节点应该是形状的角点(对于三角形:3 个节点的子图,因为有 3 个角点)。当然,这个子图的创建不应该影响起始图。

例子:

  • DiGraph 由 2 个节点组成:“正方形”和“三角形”。
  • “正方形”和“三角形”之间的边缘
  • 节点“正方形”是包含 4 个节点(每个角点 1 个)的子图;
  • 连接这些节点的边;
  • 节点“三角形”是包含 3 个节点(每个角点 1 个)的子图;
  • 连接这些节点的边。

是否可以在 NetworkX 中做到这一点?任何帮助或建议都将不胜感激。

0 投票
2 回答
8703 浏览

python - 如何使用networkx从给定图中提取所有可能的诱导子图

我想知道是否可以使用 networkx 从输入大图中提取所有可能的诱导子图(graphlet),在子图中具有特定数量的节点,或者是否有另一个包可以完成这项工作?例如,如果我有一个以 networkx 邻接表格式显示的大图,

图 G:

看起来像

在此处输入图像描述

如果我想用 3 个节点提取 graphlet,算法应该返回我

子图1:

[(1,2),(1,3)] 在此处输入图像描述 子图2:

[(1,3),(1,7)] 在此处输入图像描述 子图3:

[(3,4),(3,5),(4,5)] 在此处输入图像描述

子图 4、子图 5、子图 6...

以下是@Hooked 提出的问题的代码。假设n = 3

输出看起来像

0 投票
2 回答
2464 浏览

c# - 在有向图中查找被某些属性隔离的子图

请原谅我对图论词汇的小知识。

我只能用常见的英语单词来描述这个问题。也许有人可以指出我正确的方向和/或查找的条件。

这个问题是作为可视化编程语言实现的一部分出现的。其中一个顶点是一个函数/方法,边在函数之间传输数据。现在有以下问题:

可以允许将具有Collection< TItem >类型的顶点 A 的输出连接到具有TItem类型的顶点 B 的输入。然后将类型为 TItem 的顶点 B 输出到类型为Collection< TItem >的输入顶点 C 。这将告诉编译器它必须在顶点 B 周围包装一个foreach函数,以将 B 的函数应用于来自 A 的集合中的每个项目,并将新项目作为集合输出到 C 的输入。所以从 A 到 B 的边是多对一连接,从 B 到 C 是一对多。

现在实际的问题是,什么样的算法会找到一个被一对多连接包围/隔离的(有向)子图?以便编译器围绕这个特定的子图包装一个 foreach 函数?我试图想象这张照片中的问题:

在此处输入图像描述

0 投票
1 回答
100 浏览

hadoop - FANMOD - 使用 Hadoop/MapReduce 进行子图搜索

我有这个 我应该为大数据实现的Fanmod算法。

我想知道使用 Hadoop/Mapreduce 是否有效。

如果没有,那么您能否给我一些有效解决此问题的提示?