【问题标题】:Graphviz - temporary image fails to openGraphviz - 临时图像无法打开
【发布时间】:2009-10-22 15:00:43
【问题描述】:

我刚刚在 Cpanel 中安装了 Graphviz PEAR 包并尝试运行以下脚本: (来自http://pear.php.net/manual/en/package.images.image-graphviz.example.php

[?php
require_once '/home/user_directory/php/Image/GraphViz.php';

$gv = new Image_GraphViz();
$gv->addEdge(array('wake up'        => 'visit bathroom'));
$gv->addEdge(array('visit bathroom' => 'make coffee'));
$gv->image();
?]

如果我运行此脚本,我会收到以下错误消息:

Warning: fopen(/tmp/graph_8xynSO.svg) [function.fopen]: 
failed to open stream: No such file or directory in 
/home/user_directory/php/Image/GraphViz.php on line 210

我检查了 /tmp 目录的权限:它们被设置为 777(虽然我在其中看不到 graph_8xynSO.svg 文件)。请问还有什么地方我应该去看看吗?

谢谢,

PHP

【问题讨论】:

    标签: graphviz


    【解决方案1】:

    很有可能您的主机上没有安装 graphviz 程序。您是否具有 exec() 功能或 shell 访问权限?如果是这样,请尝试通过以下命令直接调用 graphviz:

    echo "digraph G {Hello->World}" | dot -Tpng >hello.png
    

    Pear 包不包含 graphviz 程序,而只是它的包装器。我不确定 cPanel 是否先进行依赖性检查。如果不是您的盒子,您可能必须先让管理员安装 graphviz。

    如果您无法让 graphviz 在您的共享主机上工作,您可以调用 Web 服务来呈现图像。示例见http://bloodgate.com/graph-demo

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-03-07
      • 1970-01-01
      • 1970-01-01
      • 2017-12-03
      • 1970-01-01
      • 2013-08-15
      • 1970-01-01
      相关资源
      最近更新 更多