我是一名社会科学家,很难通过将此处记录的绘图程序与dot
此处记录的包sem
集成的技术说明而苦苦挣扎。
我已成功运行包中的命令pathDiagram
,该命令sem
输出的代码可能应该读入包dot.
的文档中sem
说
"To obtain graphics output directly, the dot program must be on the system search path."
我确信这是一个完全平凡的问题,但我非常感谢帮助。我迷路了。
在 R 中执行以下命令:
Sys.which("dot")
这将告诉您系统调用是否能够找到您的“点”安装。你确实安装了“点”,对吧?
MacOS 大于或等于 10.6(并且您的 ML 为 10.8)的 Graphviz pkg 文件可以从 AT&T 实验室获得:http: //www.graphviz.org/Download.php
从其 .pkg 文件(在 OSX 10.6.8 上使用相同的 Graphviz 版本 2.30.1)安装后,我得到:
> Sys.which(c("dot"))
dot
"/usr/local/bin/dot"
这不会打开dot
。它只是确认 R 可以找到 dot 程序。在 hte?pathDiagram
页面上运行第一个示例仅将源文件输出到控制台,该源文件可用于dot
控制台,因为没有给出文件参数,但如果你添加一个file 参数它使用dot
向控制台屏幕发送消息创建一个 pdf 文件:
pathDiagram(sem.dhp, min.rank='RIQ, RSES, RParAsp, FParAsp, FSES, FIQ', file="test",
max.rank='ROccAsp, REdAsp, FEdAsp, FOccAsp', output.type="graphics", graphics.fmt="pdf")
#Running dot -Tpdf -o test.pdf test.dot
这在我的工作目录中生成了一个可以使用 Preview.app 查看的文件。如果您想dot
单独使用,则需要阅读其手册并按照说明以独立方式使用它。
如果当您which dot
在终端中键入时,您会收到带有路径的响应,那么可以肯定地说graphviz
已安装。
根据pathDiagram
的手册(即?pathDiagram
),它不打算返回值。
相反,使用file
参数指定将输出保存到的位置。
pathDiagram(model=SomeModelInR, file="path/to/file", ...)
这似乎更像是一个一般的 mac os x 问题,但无论如何,我们开始吧:
在您的applications > utilities
文件夹中,打开终端。
(我假设 dot 被调用dot
,如果没有请相应地修改)
类型which dot
- 这将向您显示 dot 的路径,可能类似于/usr/bin/dot
- 在这种情况下,您在下一部分中寻找的路径是/usr/bin
类型echo $PATH
- 这将向您显示几条分隔:
的路径 - 如果您获得的路径which dot
被列为这些路径之一,那么您已经准备就绪。
- 如果没有,请参阅下面的链接了解如何修改
另请参阅: 如何在 Mac 上编辑 PATH 环境变量