15

我正在尝试找出如何在基于点的graphviz图中删除节点中的某些文本?

我在此页面上查看,但无法弄清楚: http ://www.graphviz.org/doc/info/attrs.html

谷歌搜索也没有帮助。

考虑这个图表,这些基本上是来自 bugzilla 的错误编号。红色节点代表已关闭的错误,但我不想像这样对它们进行颜色编码。显然,带删除线的511272比红色节点 511272 更直观。

在此处输入图像描述

如果有人知道如何在节点内删除文本,请分享。谢谢,

肖比特

4

2 回答 2

16

Graphviz 没有自己的样式来执行此操作,但由于它是 Unicode,您可以使用该技术与组合字符“组合长笔划覆盖”(U + 0336),维基百科关于删除线的文章建议:

在无法使用标记的纯文本场景中,Unicode 提供了许多组合字符来实现类似的效果。“长笔划覆盖”(U+0336)导致整个文本的笔划不间断,

  • 分离:A̶B̶C̶D̶E̶F̶G̶H̶I̶
  • 组合:A̶B̶C̶D̶E̶F̶G̶H̶I̶

这张图:

digraph G {
    a [label="1̶2̶3̶4̶5̶"]
    b [label="54321"]
    a->b
}

使用 graphviz 2.23.6 渲染此 png 输出:

带有 unicode 删除线的 graphviz 示例

于 2012-08-19T18:44:29.323 回答
3

另一种选择是使用类似 HTML 的标签

digraph G {
    a [label=<<s>12345</s>>]
    b [label="54321"]
    a->b
}

在此处输入图像描述

于 2020-06-19T10:40:23.520 回答