如何在Mac OS上的graphviz中加速渲染多个图形?

时间:2013-10-15 22:53:40

标签: macos graphviz

我正在编写一个程序,使用dot重复渲染许多小图(50-100)。它通过调用dot来完成此操作。不幸的是,这个过程非常缓慢。当我查看活动监视器时,我看到fontd消耗了几乎所有的处理时间。看来这是由于某种字体枚举造成的。

鉴于我正在使用SVG后端,有没有办法加速渲染许多图形?

我不相信我可以在一个渲染中完成所有图形,因为它们必须全部嵌入到自动生成的HTML页面中。

以下示例脚本需要30秒才能在我的2.2 GHz Core i7(2011 MacBook Pro)上运行

#!/bin/bash

for i in {1..100}
do
  dot -o tmp.svg -Tsvg <<Limit
digraph g {
  a1 -> a2;
}
Limit
done

渲染单个图形,如下所示(97个边缘未显示)需要0.3秒。

digraph g {
  a1 -> a2;
  a3 -> a4;
  ...
  a199 -> a200;
}

0 个答案:

没有答案