graphviz - PNG文件未在graphviz dot程序中呈现
问题描述
我想将图像用作.dot
嵌入到Rmarkdown
项目中的程序中的节点。我不知道如何使用DiagrammeR
. 节点和类似 HTML 的标签似乎可以工作,只是IMG
属性不行。
到目前为止,以下是我的代码:
digraph structs {
struct1 [shape=none, label=
<<TABLE BORDER=\"0\" CELLBORDER=\"1\" CELLSPACING=\"0\" POINT-SIZE=\"8\">
<TR>
<TD ROWPAN=\"2\">
<FONT POINT-SIZE=\"16\">
Car
</FONT>
</TD>
</TR>
<TR>
<TD></TD>
</TR>
<TR>
<TD>
<FONT POINT-SIZE=\"10\">
Engine Size
</FONT>
</TD>
</TR>
<TR>
<TD>
<FONT POINT-SIZE=\"10\">
Paint Job
</FONT>
</TD>
</TR>
<TR>
<TD></TD>
</TR>
<TR>
<TD>
<FONT POINT-SIZE=\"10\">
AutoDrive ()
</FONT>
</TD>
</TR>
</TABLE>>
];
car1 [shape=none, label=\"\", image=\"../resources/images/car-clip-art.png\"];
<-- This doesn't work either. And this comment is *not* in the program -->
car1 [label=
<<TABLE>
<TR>
<TD>
<IMG SCALE=\"FALSE\" SRC=\"../resources/images/car-clip-art.png\"/>
</TD>
</TR>
</TABLE>>
];
struct1->car1
}
这是输出图像:
如何让图像显示在输出中?
解决方案
可能 R 加载的 graphviz 库版本没有图像加载功能。你能找到它,并查看它的符号(使用 Windows 上适用的任何工具)来查看 loadimage() 的定义吗?例如 gd_loadimage、cairo_loadimage、gdiplus_loadimage 等。还可以尝试将图像转换为 JPEG,因为它通常是图像格式(或 GIF)中最低的最低公分母。
还要尝试不同的文件路径或绝对路径或没有目录的路径,以防对路径语法有一些误解。我想知道Windows中的路径分隔符是“/”还是“\”。当然,许多程序对此很灵活。我相信我们的代码只是为此交给了一个较低级别的库。
我不确定您的示例中的所有转义和嵌套 <> 但听起来好像已经弄清楚了,而且它必须是正确的。
斯蒂芬诺斯
推荐阅读
- c - 无法在 vs 代码中打开源文件
- ruby-on-rails - 在 puma 和 resque 之间共享 ActiveRecord 池资源
- wordpress - 删除 IO 上的下拉选项
- r - 使用 Purrr 或 Furrr 进行过滤,并将字符向量传递给附加函数
- sql - 如何进行连接以获取前几天的值?
- c++ - OpenDDS 入门 - 创建在设备之间传输数据的文件
- multidimensional-array - 如何用ndarray将矩阵乘以视图?
- javascript - 如何从所有键都相同的数组中提取对象
- node.js - 无法从客户端上传文件到 nextcloud
- opencv - mingw32-make install "multiple target patterns" 安装opencv时出错