在Qt应用程序中显示.dot文件

时间:2013-07-16 19:36:53

标签: qt graphviz dot

我是Qt和C ++的新手......现在,我正在Qt中编写一个应用程序,我必须在我的应用程序中显示已经生成的.dot文件。我尝试了渲染功能,但对我没有用..在这方面任何人都可以帮助我..

谢谢

3 个答案:

答案 0 :(得分:1)

直接绘制点文件需要能够在正确的位置显示节点,并正确链接它们。这是由非常复杂的引擎完成的,并不包含在点文件中,这只是图表的描述。也许有C ++ / Qt库将点文件作为输入,但我不知道它们。

根据此主题(Graphviz: How to go from .dot to a graph?),您可以轻松地将点文件转换为png或svg文件。如果要将渲染图显示在应用程序中,最简单的方法是生成png图片(从shell或代码中生成)并从程序中对其进行操作。

答案 1 :(得分:1)

使用Python有同样的问题。我提出了这个解决方案:

svg_string = dot_graph.create_svg(prog='dot')
svgWidget = QtSvg.QSvgWidget()
svgWidget.load(QtCore.QByteArray(svg_string))

猜猜你可以在C ++中做类似的事情

答案 2 :(得分:0)

看看QGraph。您需要做更多的工作才能使图表具有交互性。 无论如何,如果你是Qt的新手,即使是简单的显示器也是对图形的陡峭介绍。

我有自己的实现,但很抱歉它还没有准备好发布 - 我会在SWI-Prolog环境中做...