有没有适用于graphviz的好的IDE或WYSIWYG编辑器?

41

实际上我曾经下载过一个图形化界面工具用于Graphviz(不记得是哪个网站了),它声称自己获得了苹果设计奖。但其实这个工具只能够展示我创建的*.dot文件,而且就叫做“Graphviz”...我猜肯定有更好的工具来使用Graphviz技术。

我还试用了这个工具:链接文本

虽然他们说自己赢得了苹果设计奖,但我真的看不出有什么特别的图形用户界面,非常糟糕。


3
Graphviz会自动布局,那么你对所谓的所见即所得编辑器有什么具体期望?是视觉属性编辑吗? - Andy Dent
1
Atom编辑器的插件非常适合处理GraphViz项目 - https://atom.io/packages/graphviz-preview - Dennis Snell
还有一个Sublime Text 3插件,可以实时渲染graphviz图像。https://packagecontrol.io/packages/Graphvizer - haolee
7个回答

21
目前的Graphviz.app版本不包含上文中rampion's screenshot所示的“外部编辑器”按钮,也没有渲染/停止按钮,并且它用“属性”替换了“设置”按钮。但是,可以按照描述使用它。
我从http://graphviz.org/Download_macos.php下载了“graphviz-2.27.20101110.0545.pkg”。请注意,有几个地方提供了称为Graphviz的各种下载内容: 请使用第一个链接,我选择了最近的开发快照。浏览邮件列表(interestdevel)可以发现它仍然很活跃,而你无法从pixelglow网站得知,因为它们仍然显示2004年的“内容即将推出”的消息。
无论如何,当2.27启动时,会弹出一个“打开”对话框。打开.dot文件将显示一个图形,但取消将使您只剩下菜单栏。不要灰心,创建一个包含文本的文件。
graph graphname {
}

将其命名为something.dot。在Graphviz中打开,您将获得一个空图形用户界面:

alt text

在文件中输入更多的文本,例如:

graph graphname {
  a -- b -- c -- d -- a;
  a -- c;
  b -- d;
}

当您保存后,Graphviz窗口会自动更新以显示此内容:

alt text

“属性”工具箱中有各种各样的选项,但看起来他们希望您手动编辑源代码。我原本期望有“添加顶点”和“添加边缘”按钮,以及移动顶点的功能,但显然这不是它的重点。

因此,显然所说的所见即所得(WYSIWYG)编辑器在屏幕一侧是您最喜欢的文本编辑器,而Graphviz则在另一侧。就IDE而言,目前看起来最好的选择是打印DOT格式的documentation文档。这可能不是每个用户所想要的WYSIWYG编辑器或IDE,但对于活跃用户来说,它可能是有效的。


1
这应该被选为“正确”答案,因为它解释了如何使用当前的GraphViz版本来实现此功能。 - chaimp
1
@jeffp - 问题的作者自09年11月以来就没有出现过,所以这不太可能发生。此外,我们现在已经使用2.28版本,并且正在开发2.29版本,因此它并不是真正的当前版本。(但它比最高票答案中引用的1.13版本更为新)。 - Kevin Vermeer

9

Graphviz.app有一个命令可以在外部编辑器中打开当前的dot文件。如果您使用该命令,它将监视文件句柄的更改,并在每次在外部编辑器中保存后更新图形。这就是如何使其作为所见即所得界面工作的方法。

graphviz

“编辑”按钮位于左上角,靠近“设置”。

实际上,它会持续监视文件句柄,所以我打开Graphviz.app中的点文件,在vim中进行编辑(使用set backupcopy=yes),并在每次:w后观察图形更新。


如果你在谈论Pixelglow软件:我看不到任何启动编辑器的选项。它只是打开一个 *.dot 文件并显示它。没有其他的了。你指的是哪个软件? - Thanks
我在谈论来自pixelglow的Graphviz.app,是的。请参见上面的截图。 - rampion
这是1.13(16)版本。我刚刚试图安装新的版本(graphviz-2.22.2.pkg),但是我在我的机器上无法使它正常工作,所以它可能具有不同的界面。 - rampion
看起来你有一些幸运的其他版本。我的版本只显示一个菜单,没有任何界面。如果我打开一个文件,那么我只会看到一个空白窗口和渲染出来的图形。但是当我在该应用程序中打开它,然后在文本编辑器中打开时,即时刷新确实有效。 - Thanks
1.13仍然可用:http://www.pixelglow.com/downloads/graphviz-1.13-v16.dmg - rampion
1
1.13仅适用于ppc。您可以使用Homebrew构建自己的新版本副本,或者直接从源代码构建(但请遵循Homebrew配方)。 - keflavich

8

虽然不完全是您所要求的,但我将要提到的项目潜力非常巨大 - 作为graphviz的粉丝,我对现在已经可能的事情感到惊讶。

简短的历史:

  • http://ushiroad.com/jsviz/ - ushiroad开发了这个小家伙。使用Emscripten项目,他交叉编译了足够的graphviz来获得基本的节点布局等纯javascript应用程序。您必须单击DOT src框架右下角的小圆箭头按钮。

唯一的缺点(这并不会减弱将graphviz移植到javascript的华丽程度)就是它的功能受限。基本上只是带有几个主形状节点的点布局,不支持颜色等。

作者很棒,他把他的工作上传到github上,https://github.com/gyuque/livizjs

所以,如果你愿意,你可以很容易地使用轻量级(但专业!)的浏览器编辑器之一,例如 CodeMirror(它支持 vi 键),并像 jsviz 一样设置“渲染”按钮。

所以... 不完全是你要找的东西。但是对于花点时间解决这个问题的人来说,等待着一堆基于客户端的 Web 图形工具。


我同意 vis.js 看起来很有前途,但不幸的是,自2年前最初导入以来,在 GitHub 上没有任何提交。 - Ken Williams
2
这里有一个可运行的版本:https://dreampuf.github.io/GraphvizOnline/ - arvidj

3

3
Dotty 真的很糟糕。经常出现图形故障,我甚至搞不清如何保存更改,而且很难得到我想要的更改。 - Qwertie
2
除了易用性和故障,我的数学教授说这是正确的方法... - Kevin Vermeer

3
优秀的OmniGraffle可以导入*.dot文件,但遗憾的是,我认为您不能通过本地方式将编辑后的结果回传并导出为点文件。

OG使用Graphviz,据我所知...我想有一天当我在应用商店赚了一些硬币时,我会得到OG的;) - Thanks

2

Pixelglow 看起来就像是你提到的网站。

我注意到他们现在提供了一个适用于 iPhone 的解决方案(!)


是的,他们确实有这个功能,但那不是一个选项。我认为他们应该改进他们的Mac应用程序;) ...真的,这个应用程序甚至没有接近屏幕截图所显示的。它只包含一个菜单栏,允许打开文件和放大缩小。它没有任何更多的功能。我不相信他们赢得了任何奖项。 - Thanks
是的,我还没有看过它。我只是为了方便大家参考而记录下来。 - Brian Agnew
是的,原版因其适应Mac技术的改编而获得了奖项。它已经分支,现在被抛弃,因为它是Graphviz渲染引擎的完全重写。目前,Glen正在为Mac和Windows上的GraphViz查看和渲染开发新的GUI,虽然GUI质量有所下降,但仍处于主要源代码轨道上。我相信AT&T正在资助他的一些工作,但不包括iPhone上的优秀Instaviz。 - Andy Dent

0
另一种解决方案可能是tintfu。不幸的是,它不允许直接编辑源代码。

2
我无法弄清如何使用它...它不显示任何图形输出,而且使用文本编辑器比在左侧窗格中编辑图形更容易。 - Qwertie
我只是简单地尝试了一下。当我尝试时,它按照广告所说的那样工作。但正如你所说,手动编辑源代码要容易得多,因此我没有继续使用这个应用程序。 - exhuma

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接