【问题标题】:display trees of discrepancy analysis in R (using graphviz)在 R 中显示差异分析树(使用 graphviz)
【发布时间】:2014-06-08 04:21:05
【问题描述】:

我正在 R 中进行差异分析,但在使用 graphviz 显示树时遇到问题。我按照 Studer 等人 2011 年(在:Guillet 等人:知识发现和管理的进展)中的描述做了所有事情。我使用 disstree 命令构建名为 tree.lcp 的树,然后尝试使用 graphviz 显示它:

seqtree2dot(tree.lcp, filename="hh.lcp", seqdata=seqhh)

shell("dot -Tsvg -O hh.lcp.dot") 

第一个命令没有问题,但是第二个出现这个错误信息:

找不到命令“点”。
错误消息:
1:命令 'C:\Windows\system32\cmd.exe /c dot -Tsvg -O hh.lcp.dot' 给出状态 1
2:在外壳中(“dot -Tsvg -O hh.lcp.dot”): 'dot -Tsvg -O hh.lcp.dot' 进程失败 - 错误代码 1

我想它与路径命令有关(请参阅GraphViz: Windows PATH not set with new installer, issue when calling from R),但我将 GraphViz 安装到 C:\Program Files (x86)\Graphviz2.36,据我所知是默认设置。

任何想法,问题出在哪里?如果问题仍然是路径命令,我怎么能在 shell 命令中包含路径?

谢谢!卡塔琳娜

【问题讨论】:

    标签: r graphviz traminer


    【解决方案1】:

    可以如下指定路径

    shell(paste('"C:/Program Files (x86)/Graphviz2.36/dot"','-Tsvg -O hh.lcp.dot'))
    

    但是,如果您想根据序列之间的差异绘制一棵树,您可能最好使用更新的简化 seqtreedisplay 函数,该函数直接从 seqtree 对象生成绘图,即 @987654324 的结果@ 功能。通常,seqtreedisplay 应该自己找到 Graphviz。

    如需了解更多详情,请输入help(seqtreedisplay)查看帮助页面。

    【讨论】:

      【解决方案2】:

      最新的 TraMineR 版本具有直接运行所有内容的新功能。该函数称为 seqtreedisplay。

      seqtreedisplay(tree.lcp, type="d")

      尝试运行:TraMineR.checkupdates() 以了解您是否拥有最新的稳定版本。

      【讨论】:

      • @gilbert @Mattias Studer:seqtreedisplay,或者更准确地说是 disstreedisplay 命令正是我所需要的。 Graphviz 是自动找到的,我现在有了这些树。谢谢!卡塔琳娜
      • @Katharina 请投票并接受其中一个答案(吉尔伯特的似乎更准确)。如果你这样做,未来遇到类似问题的读者现在将如何解决它。
      猜你喜欢
      • 1970-01-01
      • 2017-07-26
      • 2018-10-26
      • 2019-05-28
      • 2021-01-03
      • 2020-11-06
      • 2011-10-05
      • 1970-01-01
      • 2014-02-25
      相关资源
      最近更新 更多