节点的 xlabels 与点中的边缘重叠

2024-01-28

我尝试使用 dot 绘制图表,但遇到以下问题

节点的标签b与边缘重叠a to b。有没有办法以某种方式移动这个标签来避免这种情况?

这是我用来生成图像的代码(使用dot)

digraph A {
  rankdir=LR;
  center=true; margin=0.3; 
  nodesep=1.5; ranksep=0.5;

  node [shape=point,  height=".2", width=".2"];

  a [xlabel="a"];
  b [xlabel="b"];
  c [xlabel="c"];
  a -> b -> c;
  a -> c;
}

这种情况经常发生,而且很烦人(这里相同,但有边缘):

我明白这是由于以下事实造成的xlabels 是在所有东西都布置好之后放置的,但我想知道是否可以提供一点帮助 - 即在需要放置标签的地方说出来。


你不能这样做——你想提供 xlabel 的位置信息,但 graphviz 目前 (2016-01-25) 不允许这样做。有一个打开功能请求 https://gitlab.com/graphviz/graphviz/issues/299在 graphviz 错误跟踪器中查看此功能;它被描述为:

这基本上是一个允许用户提供 xlabel 位置信息的功能请求。对于附加到节点的 xlabel,坐标应相对于节点位置。类似的功能可以适用于边缘的头部和尾部标签。我想边缘的 xlabels 可以基于边缘的“中心”。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

节点的 xlabels 与点中的边缘重叠 的相关文章

  • 如何从java调用GraphViz

    如何从java调用GraphViz以及如何使用java调用GraphViz函数 为了访问 GraphViz 库来构建点图 需要包含哪些必要的 jar 文件 有没有生成点图的示例程序 Check this http www loria fr
  • 使用 C++ 代码中的 Windows 本机程序打开文件

    我的 C 程序创建 png 文件 我需要在创建后立即打开 查看 该文件 有没有办法打开它 以便在其中打开它Windows资源管理器 因此文件将使用用户首选的程序打开 并且如果没有与文件格式关联的程序 Windows 将显示对话框窗口 用户可
  • 子图有相同的节点,如何使其唯一

    我通过 perl 脚本创建点文件 这是包含相同节点的子图 例如 subgraph aa gt bb gt cc subgraph dd gt bb gt ee 我知道这些子图使用相同的命名空间 所以我的结果输出很混乱 在每个子图中 我可以使
  • Graphviz 和 Brew doctor - 意外的 dylibs 错误

    刚刚做了一个brew install graphviz在 Mountain Lion 上 这给了我这个错误 错误 执行失败 make install graphviz rb 47 以为我只是卸载它 所以跑了brew uninstall gr
  • CMake graphviz 自动生成

    我知道通过 CLI 生成 CMake 项目依赖关系图的常用方法 cmake graphviz file 但是有没有一种方法可以通过在 CMakeList 中设置标志或命令来自动生成它 这个想法是让 CMakeLists txt 本身触发图形
  • graphviz 中的子图布局

    我有显示两个子图的代码 graph rankdir LR subgraph cluster01 label t 0 a0 label A a1 label B a2 label C a5 label E a0 a1 a1 a2 a2 a0
  • 如何从点文件中提取子图

    我有一个由名为egypt的软件生成的点文件 点文件包含许多节点和边 如果我用这个点文件画图 由于节点太多 很难看清图片 而我需要的只是从一个节点开始的子图 不需要全图 有没有办法使用这个点文件从指定节点 例如start node 绘制子图
  • Java图形布局算法

    在我的 Java 应用程序中 我需要某种布局算法 第一种方法如下 需要安装Graphviz包 创建点文件 从java应用程序调用graphviz并解析输出 布局 使用 graphviz 的布局显示图形 属性点 但这个解决方案需要在运行的机器
  • Networkx:可视化 MultiGraph 时重叠边缘

    以下多重图使用 graphviz neato 正确绘制 即平行边不重叠 生成 png 如图所示 这个答案 https stackoverflow com questions 14943439 how to draw multigraph i
  • 如何避免graphviz中的重叠节点?

    我正在尝试绘制一个包含许多节点和边的图 然而 该图变得过于笨拙 节点和边重叠 我尝试了 未成功 以下所有方法或这些方法的组合 size 12 0 20 0 margin 0 0 len 1 0 我在用neato生成一个 png 文件 尺寸规
  • 如何可视化 sklearn GradientBoostingClassifier?

    我训练过一个梯度提升分类器 http scikit learn org stable modules generated sklearn ensemble GradientBoostingClassifier html sklearn en
  • 在 .dot 树中强制执行水平节点排序

    我正在尝试使用 GraphViz 重新创建二叉搜索树的示例图 它最终应该是这样的 这是我的第一次尝试 digraph G nodesep 0 3 ranksep 0 2 margin 0 1 node shape circle edge a
  • graphviz 中跨越多行的记录

    我试图用点语言可视化一个相当复杂的结构 因为记录很大 所以我想把代码写成多行 所以而不是 A11 label A 11 Access Control A 11 1 Business requirements for access contr
  • 以前没有发生过的访问冲突

    我正在 P 调用 Graphviz如图所示 http implicitoperator com blog 2009 12 24 rendering an in memory graphviz image with c html 当我写那篇博
  • 未找到 GraphViz 的可执行文件:Anaconda-3

    我正在尝试显示树输出 但是当我运行下面的脚本时 我收到如下错误 IncationException 未找到 GraphViz 的可执行文件 我在这里搜索过类似的主题 但其中大多数与 Mac 相关 我使用的是 Windows 10 64 位操
  • 如何更改 graphviz 的默认字体大小?

    我使用 doxygen graphviz 来记录我的代码 graphviz 在生成图像方面做得很好 有什么方法可以更改 graphviz 的默认字体大小吗 默认值为 14 但我想使用 12 更改单个元素 例如节点 子图 边缘等 的字体大小确
  • 设置预定义的节点样式?

    在过去的 15 分钟里 我一直在谷歌上搜索 试图找到这个问题的答案 但我似乎无法弄清楚 我的任务是为我在工作中开发的一些应用程序构建一些小流程图 他们不需要任何花哨的东西 因为他们将在 vizio 中将其转换为他们喜欢的格式 他们甚至说我们
  • 在绘制图形之前删除边数为 0 的节点(dot、graphviz)

    在绘制之前如何从图表中删除没有边缘的节点dot Tpng mcve gv o mcve png Current Result Wanted Result 阅读文档并搜索网络我发现以下内容answer http www graphviz or
  • 您将如何显示/布局企业应用程序之间的数据流?

    我的雇主是一家大型瑞士电信公司 我们有许多系统用于为不同任务传输数据 例如性能管理 故障管理 配置管理等 为了向 管理 尖头等 解释这些系统如何交互 我将有关数据流 格式 协议的信息收集到 数据库 逗号分隔的说服者 中 然后为 Graphv
  • 在 Graphviz 中从记录元素的中心开始绘制出边

    在 Graphviz 中 是否可以从子记录的中心而不是边界开始绘制出边 这张图 http www linuxjournal com files linuxjournal com linuxjournal articles 072 7275

随机推荐