我正在编写一个程序,它使用dot
. 它通过调用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;
}