Graphviz:如何从.dot转到图表?

时间:2009-09-29 19:34:20

标签: windows graphviz dot

我似乎无法弄清楚这一点。我有一个.dot文件,根据语法有效。如何使用graphviz将其转换为图像?

(请注意我在Windows上,而不是Linux)

11 个答案:

答案 0 :(得分:399)

输入:dot -Tps filename.dot -o outfile.ps

如果要使用点渲染器。还有像neato和twopi这样的替代品。如果graphiz不在您的路径中,请确定它的安装位置并从那里运行。

您可以通过更改-o指定的文件名扩展名来更改output format

如果您正在使用Windows,请查看已安装的名为GVEdit的工具,它可以使整个过程更加轻松。

有关如何使用这些工具的更多详细信息,请参阅“用户指南”一节中的graphviz网站:

http://www.graphviz.org/documentation/

(例如,有关dot命令的输出格式,请参见第27页)

http://www.graphviz.org/pdf/dotguide.pdf

答案 1 :(得分:169)

dot -Tps input.dot > output.eps
dot -Tpng input.dot > output.png

PostScript输出似乎总是在那里。我不确定dot是否默认具有PNG输出。这可能取决于你如何构建它。

答案 2 :(得分:71)

  

dot file.dot -Tpng -o image.png

这适用于Windows和Linux。必须安装Graphviz。

答案 3 :(得分:30)

答案 4 :(得分:29)

获取graphviz-2.24.msi Graphviz.org。然后得到zgrviewer

Zgrviewer需要java(大概1.5+)。您可能必须在Zgrviewer的首选项中设置Graphviz二进制文件的路径。

档案 - >打开 - >用点打开 - > SVG管道(标准)...... 选择你的.dot文件。

你可以放大,导出各种有趣的东西。

答案 5 :(得分:6)

您还可以输出xdot格式的文件,然后使用canviz(一个JavaScript库)在浏览器中呈现它。

Canviz on code.google.com

要查看示例,截至2014年11月2日,页面上方有一个“Canviz演示”链接。

答案 6 :(得分:3)

您可以使用VS代码并安装Graphviz扩展,或者

  1. 从以下位置安装Graphviz https://graphviz.gitlab.io/_pages/Download/Download_windows.html
  2. C:\Program Files (x86)\Graphviz2.38\bin(或your_installation_path / bin)添加到系统变量中 路径
  3. 打开cmd并转到保存.dot文件的目录
  4. 使用命令dot music-recommender.dot -Tpng -o image.png

enter image description here

答案 7 :(得分:2)

这应该结合很多答案。

# Convert dot to png via graphviz
dot -Tpng filename.dot -o filename.png

# Convert dot to svg via graphviz
dot -Tsvg filename.dot -o filename.svg

# Convert dot to eps via graphviz
dot -Tps filename.dot -o filename.eps

请记住,在OSX(MAC)上,您需要安装homebrew来安装graphviz才能使用上面的dot命令。

brew install graphviz

如果已安装Anaconda,也可以通过conda的软件包管理器功能安装Graphviz(并使用上面的命令)。

conda install python-graphviz

答案 8 :(得分:1)

不需要任何转换。

我们可以简单地在Linux中使用 xdot 命令,该命令是Graphviz点文件的交互式查看器。

例如: xdot file.dot

了解更多信息:https://github.com/rakhimov/cppdep/wiki/How-to-view-or-work-with-Graphviz-Dot-files

答案 9 :(得分:0)

对于窗口用户,请运行完整命令将* .dot文件转换为png:

public partial class ProgressBar : Window
    {
        public ProgressBar()
        {
            InitializeComponent();
        }

        private void Window_ContentRendered(object sender, EventArgs e)
        {
            for (int i = 0; i <= 15; i++)
            {
                pbStatus.Value++;
                System.Threading.Thread.Sleep(1000);
            }
        }
    }

我在solgraph中发现了一个错误,即它正在使用旧版本的solidity-parser,它似乎不够智能,无法捕获为可靠性编程语言本身所做的新增强,例如:发出事件

的关键字

答案 10 :(得分:0)

您可以为此使用非常好的在线工具。链接在这里 dreampuf.github.io 只需用您的代码替换编辑器中的代码即可。