graphviz - 为什么此代码在 viz-js 站点中不起作用?
问题描述
这段代码
digraph R {
node [shape=record];
{ rank = same; rA; sA; tA; }
{ rank = same; uB; vB; wB; }
rA -> sA;
sA -> vB;
uB -> vB;
wB -> tA;
}
在http://viz-js.com/中不起作用, 但在http://www.webgraphviz.com/中可以正常工作
为什么?如何修复才能在两个站点上工作?
解决方案
有趣的问题。
使用版本 2.38(点 - graphviz 版本 2.38.0 (20140413.2041))我得到了正确的图像(如http://www.webgraphviz.com/所示):
使用 2.40 版(点 - graphviz 2.40.1 版(20161225.0304))我收到错误消息:
Warning: flat edge between adjacent nodes one of which has a record shape - replace records with HTML-like labels
Edge rA -> sA
Error: lost rA sA edge
Error: lost uB vB edge
图片看起来像:
所以问题很可能是 2 个解释器使用的 dot 版本。有一个更新版本的 dot 可用(2.42.2 见https://gitlab.com/graphviz/graphviz),但不太可能将它集成到 viz-js.com 中,就像 viz.js 存储库一样(https://gitlab.com/graphviz/graphviz /github.com/mdaines/viz.js)不幸的是,写着:此存储库已由所有者存档。它现在是只读的。
推荐阅读
- c# - 正则表达式替换除大小写“{0}”之外的所有花括号
- c# - 关于财产变更
- javascript - Vuejs - 基于其他计算属性的计算属性
- mongodb - Mongodb 聚合性能和可扩展性
- android - 使用文本时钟作为项目的回收器视图上的空指针异常
- css - Ipad Pro 高度不对齐
- java - 如何将方法 StageHelper.getStages() 从 java 1.7 替换为 java 11
- javascript - 如何在 nuxt 中制作 *.vue 文件
- android - 使用 EditText 过滤 ListView
- wordpress - 如何在不裁剪的情况下调整 WooCommerce 图像的大小?