GraphViz - Link 边缘标签到另一个点图
GraphViz - Link Edge Label to Another Dot Graph
我一直在寻找解决此问题的方法,但我似乎找不到将边缘标签链接到另一个 GraphViz 点图的方法。例如,如果我有一个名为 'mydotimage2.svg' 的图表,由以下内容生成:
digraph G
{
graph [compound = true];
subgraph cluster_0
{
node [style = bold];
"A" "B" "C";
}
subgraph cluster_1
{
node [style = bold];
"One" "Two" "Three";
}
"A" -> "One" [lhead = cluster_1, ltail = cluster_0, label = "Falafel", href = "~/workspace/GraphViz/mydotimage1.svg"]
}
如果我通过以下方式在我的终端中创建 'mydotimage2.svg' SVG 图像:
dot -T svg mydotimage2.dot > mydotimage2.svg
图像在我的浏览器中打开得很好,生成的图像中从 A 到 One 的边缘标签是可点击的,但无法打开同样位于同一 GraphViz 目录中的 mydotimage1.svg。有谁知道如何做到这一点?我真的很感激。提前致谢。
这是我在我的机器上观察到的,我想这是一个普遍的问题:
graphviz
确实将波浪号 ~
扩展到 但它不会删除波浪号。在我的例子中,当我点击图中的超链接时,我看到 /home/rainer/~/workspace/GraphViz/mydotimage1.svg
作为图像位置。那显然是不存在的。在我看来像是一个错误...
解决方案/解决方法是用您的主文件夹路径替换脚本中的 ~
,在我的例子中是
href = "/home/rainer/workspace/GraphViz/mydotimage1.svg"
按预期工作。
您应该使用相对路径。
也就是说,使用 href = "./mydotimage1.svg"
而不是 href = "~/workspace/GraphViz/mydotimage1.svg"
顺便说一句,您可以将所需的输出文件名指定为 dot
.
的参数,而不是使用管道重定向 (>
)
只需将 -omydotimage2.svg
附加到命令行即可。
其中 "mydotimage2.svg" 是您要写入的文件名。
我一直在寻找解决此问题的方法,但我似乎找不到将边缘标签链接到另一个 GraphViz 点图的方法。例如,如果我有一个名为 'mydotimage2.svg' 的图表,由以下内容生成:
digraph G
{
graph [compound = true];
subgraph cluster_0
{
node [style = bold];
"A" "B" "C";
}
subgraph cluster_1
{
node [style = bold];
"One" "Two" "Three";
}
"A" -> "One" [lhead = cluster_1, ltail = cluster_0, label = "Falafel", href = "~/workspace/GraphViz/mydotimage1.svg"]
}
如果我通过以下方式在我的终端中创建 'mydotimage2.svg' SVG 图像:
dot -T svg mydotimage2.dot > mydotimage2.svg
图像在我的浏览器中打开得很好,生成的图像中从 A 到 One 的边缘标签是可点击的,但无法打开同样位于同一 GraphViz 目录中的 mydotimage1.svg。有谁知道如何做到这一点?我真的很感激。提前致谢。
这是我在我的机器上观察到的,我想这是一个普遍的问题:
graphviz
确实将波浪号 ~
扩展到 但它不会删除波浪号。在我的例子中,当我点击图中的超链接时,我看到 /home/rainer/~/workspace/GraphViz/mydotimage1.svg
作为图像位置。那显然是不存在的。在我看来像是一个错误...
解决方案/解决方法是用您的主文件夹路径替换脚本中的 ~
,在我的例子中是
href = "/home/rainer/workspace/GraphViz/mydotimage1.svg"
按预期工作。
您应该使用相对路径。
也就是说,使用 href = "./mydotimage1.svg"
href = "~/workspace/GraphViz/mydotimage1.svg"
顺便说一句,您可以将所需的输出文件名指定为 dot
.
的参数,而不是使用管道重定向 (>
)
只需将 -omydotimage2.svg
附加到命令行即可。
其中 "mydotimage2.svg" 是您要写入的文件名。