问题标签 [neato]
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-3.x - 如何在 Windows 中使用带有整洁风格的 graphviz?
我想以整洁的风格输出以下代码。
python - 将引擎从点更改为neato时找不到graphviz PATH变量
为什么在更换引擎时会出现错误?点引擎一切正常。
代码:
错误:
graphviz - Graphviz:如何使用带有子图簇的超大图的neato?
我有一个很大但不是很大(?)的图,有 13 个子图集群,包含大约 100 个节点和 3,147 条边。
Windows 上的 Dot 崩溃和 Linux 上的段错误。
这个问题表明解决方案是使用neato
,而不是dot
。
但是,这个页面说
请注意这里有一些怪癖......只有 DOT 和 FDP 布局方法似乎支持子图
我的输出是一个巨大的黑色意大利面球,无论我放大多远。所以我删除了除一个之外的所有消息,这表明 subgrphs 似乎是相互嵌套绘制的。
它们绝对不会嵌套在源文件中;这是一个示例,更改了商业敏感名称:
这在语法上似乎是正确的(边缘紧随其后)。
因此,链接页面似乎是正确的:
只有 DOT 和 FDP 布局方法似乎支持子图
但是,看起来我也需要一个大图的neato。
我有哪些选择?
[Updtae] 我跑了fdp
,得到以下错误信息
错误:节点“xxx”包含在两个不可比较的集群“AAA”和“BBB”中
这似乎提供了一个线索。一个节点名真的不能在两个集群中使用吗?
如果是这样,解决方案似乎是在节点名称之前加上集群名称......
python - 如何在 Windows 10 中为 python 添加 os.environ["PATH"] 的路径?
我的脚本有错误,因为在路径中找不到“neato.exe”。当我查看 os.environ["PATH"] 时,确实C:\\Program Files (x86)\\Graphviz2.38\\bin
,路径neato.exe
不存在。我暂时可以通过添加这一行来进行破解,但这似乎并不令人满意。
尽管如此,它表明该错误ValueError("Program %s not found in path." neato.exe)
是一个准确的错误。当我将路径添加到 Neato 时,该脚本有效。我在windows中添加C:\Program Files (x86)\Graphviz2.38\bin
了我的环境变量,但无济于事。而且我还注意到我的路径环境中只有几条路径。Vars.,而不是 python 列出的许多。我正在使用 python 3.7 并使用 anaconda 导航器运行它。我想做一个更永久的改变,这样我就不必编辑上面neato.exe
愚蠢的每个脚本if statement
。有谁知道如何更改 os.environ["PATH"]
anaconda 中的内容?
我正在使用networkx,networkx.drawing.nx_agraph.to_agraph。脚本agraph.py
有这个函数(_which()
),需要进行路径匹配,否则会抛出错误。
python-3.x - 在 Windows10 64bit 中安装 graphviz
我已经按照此处给出的命令安装了graphviz,以将其与Networkx一起使用
但是尝试运行此处给出的代码时出现问题
我搜索了一下,发现Neato 缺少64 位版本。
这个问题还存在吗?有没有办法安装 Neato?
编辑:按照下面给出的说明,我在以下文件夹中安装了 Graphviz
有人可以建议如何从这里开始吗?
不起作用。
所以我尝试了,
返回
我现在不确定如何安装 pygraphviz。
r - 在 R 中创建具有集节点位置和集中边的网络图,同时带有圆头和箭头
我一直在尝试找到一种方法来使用 DiagrammeR/GraphViz 在 R 中复制以下网络图格式,但没有成功(忽略 N1 上的黑色粗箭头):https://i.stack.imgur.com/oHpQz。 PNG
该图是一个有向图,如果边值为正,则某个方向上的每条边都以箭头 (-->) 结尾,如果边值为负,则以圆/点 (--o) 结尾。在一对节点(例如 N1 -- A1)之间,可以有一条边 N1 --> A1 和一条边 A1 --o N1,这些需要集中起来,使两条边看起来像一条带一端为箭头,另一端为圆头(如:o--->)。这些不能是平行的,也不能在理想情况下看起来像两条边。
另一个要求是节点必须位于非常特定的位置,并且在边缘可能发生变化的整个模型模拟中始终保持在那里。根据我的尝试和我阅读的文档,这不可能以 DOT 格式执行,但可以使用 neoto 格式。
这是我遇到问题的地方。在neato 中,我可以通过定义节点的x、y 位置将节点精确地对齐到我想要的位置。但是,当我使用 concent = true 从两个平行的边缘创建 o---> 边缘时,只剩下一种类型的箭头。因此,应该看起来像 o---> 的边缘最终看起来像 ---> 或 o---。
这在 DOT 格式中不是问题,因为 concent = true 可以满足我的要求,但在 DOT 中我无法分配确切的节点位置。我尝试过使用节点等级来解决这个问题,但运气不佳。似乎将我想要的节点堆叠在同一等级内的不同等级中。同样,concentrate = true 似乎不适用于同一等级内的节点之间的边缘,因为它将它们作为两个单独的弯曲边缘 ---> 和 o--- 而不集中它们。
我需要这个工作的原因是因为我正在运行边缘发生变化的模型模拟,并且我需要生成数百个这样的图表。为了便于比较,节点需要保持在同一位置以保持一致性。
这是我使用neato格式所能想到的最接近的格式(节点以我想要的方式定位,但它没有显示正确的o--->所有黑色边缘减去自身边缘;红色边缘是真正的单向链接) : https://i.stack.imgur.com/YJBY7.jpg
如果只有边缘显示为正确的 o---> 格式,这将非常适合我的需要。如果您知道使用 DiagrammeR/GraphViz 甚至其他程序解决此问题的任何方法,我将不胜感激。谢谢!