2

我是一名社会科学家,很难通过将此处记录的绘图程序与dot此处记录sem集成的技术说明而苦苦挣扎。

我已成功运行包中的命令pathDiagram,该命令sem输出的代码可能应该读入包dot.的文档中sem

 "To obtain graphics output directly, the dot program must be on the system search path."

我确信这是一个完全平凡的问题,但我非常感谢帮助。我迷路了。

4

2 回答 2

0

在 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单独使用,则需要阅读其手册并按照说明以独立方式使用它。

于 2013-03-25T06:45:57.180 回答
0

根据评论更新:

如果当您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 环境变量

于 2013-03-25T04:52:01.247 回答