问题标签 [digraphs]
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 - Python的matplotlib中带有networkx的非常慢的网络图动画
我很想为随着时间的推移而增长的networkx图制作动画。我让它与弯曲的边缘一起工作。很高兴,但是随着图表的增长,它会显着变慢!?任何人都可以解释或更改给出的代码以更快地运行。我不认为这是我的电脑问题。注意:即使没有花哨的弯曲边缘,它也很慢。一个简单的 nx.draw 会导致同样的问题
hyperlink - Netlogo:创建指向新邻居的链接
我尝试在 Netlogo 中生成有向图。两个节点之间应该只有一个链接。我使用以下代码片段:
它不断在节点之间创建两个链接(从和到)。我的错误是什么?
提前致谢!
埃里克。
graph - Graphviz如何控制边缘
截图。我正在寻找右侧的图表,但我得到的是左侧的图表。我是 Graphviz 的新手。我还必须制作节点 1 和 2,因为我无法模仿右侧的图像。我的端子形状也不完全相同。有人帮我解决这个问题。我的代码到现在:
python - NetworkX MultiDiGraph——边缘数据属性中出现“id”和“key”?
我在 NetworkX MultiDiGraph 中迭代边缘,如下所示:
在某些情况下,我在字典中找到id
和键,但我无法弄清楚这些是何时或为什么被创建的,除非它只发生在.key
d
u==v
我一直无法找到导致这种情况的最小示例。我觉得很奇怪,钥匙k
会在 attr dict 中重复d
。
algorithm - 生成所有唯一的有向图,每个节点有 2 个输入
我正在尝试生成所有符合规范的独特有向图:
- 每个节点必须恰好有 2 个输入
- 并且允许任意多个输出到图中的其他节点
我目前的解决方案很慢。例如,对于 6 个节点,算法需要 1.5 天才能到达我认为完成的位置,但它可能还要再检查几天。
n
我的节点图算法:
生成
n
的全长字符串0
,其中一个符号是 a1
,例如,对于 n=3,[[0,0,1], [0,1,0], [1,0,0]]
。这些可以被认为是来自单位矩阵的行。生成所有可能的
n * n
矩阵,其中每一行是所有可能的组合step 1. + step 1.
这是连接矩阵,其中每个单元代表从column-index
到的连接row-index
因此,对于 n=3,这些是可能的:
[0,1,0] + [1,0,0] = [1,1,0]
[1,0,0] + [1,0,0] = [2,0,0]
这些代表节点的输入,通过将步骤 1 添加到自身,结果将始终代表 2 个输入。
例如:
因此B
,每个C
连接A
一次:B -> A', C -> A'
,
并B
连接到自身两次:B => B'
- 我只想要唯一的,所以对于生成的每个连接矩阵,我只能保留它,如果它不与已经看到的图同构。
这一步很昂贵。我需要通过遍历同构图的每个排列,对它们进行排序,并将第一个视为“规范形式”,将图转换为“规范形式”。
如果有人潜入测试其中任何一个,这里是n
节点的唯一图的计数:
可能的优化:
既然我要生成要测试的图表,有没有办法在不测试的情况下将它们排除在外,因为它们与已经看到的图形同构?
有更快的图同构算法吗?
我认为这与“Nauty”有关,我在论文中读过其他一些,但我还没有实现它们的专业知识(或带宽)。
这是一个可演示的连接矩阵,可以在 graphonline.ru 上绘制,以显示自连接和到同一节点的 2 个连接:
这是haskell中的代码,如果你想玩它,但我更关心的是让算法正确(例如修剪搜索空间),而不是实现:
python - 是否可以更改 pydot 图的节点大小?
我写了一个代码将我的转换MultiDiGraph()
为pydot
图表以显示自循环和箭头,但转换后,pydot
图表A
失去了所有属性G
。如何更改图形的节点大小A
并将它们设置为等于node_sizes[]
列表中的相应值,就像我所做的那样G
?
代码:
vim - 如何在vim中删除有向图突出显示
使用vim或nvim,当我打开一个新的 vim 终端时,有向图正确显示。见下文:
然而,每当我改变colorscheme
(任何,它不是特定于特定的配色方案) - 然后有向图就会突出显示。即使切换回原始配色方案,突出显示仍然存在。任何有向图都会发生这种情况,而不仅仅是这个问题中显示的那个。见下文:
无法找到删除该突出显示的方法,或首先阻止它发生。尝试过类似的命令,:highlight nonascii none
但没有运气。非常感谢任何帮助/建议。
matlab - 矩阵乘法 MATLAB
所以也许我想多了,把它弄得一团糟......
我在 MATLAB 中有一个有向图。我需要将其更改为无向图以使用最小生成树对其进行评估(对吗?它不适用于有向图)。我有一个表示重复的 nx1 二进制矩阵(1 是唯一的,0 是重复的),我的 node-node-edgeweight 矩阵的形式是 nx3. 似乎我的有向边在两个方向上都是相同的,因此将其更改为无向边应该不会有什么不同。
如何使用二进制的列向量将主矩阵中的所有三列重复归零,这样它只会显示无向边?
另外,如果我缺少另一种方法,我会喜欢的!