生成图形的图片/图形

时间:2008-11-17 18:13:20

标签: networking drawing visualization graph-theory shortest-path

在网络上进行最短路径算法时,我想生成一张网络图片。我想表示节点(圆圈),链接(线),遍历链接的成本(链接线中间的数字)和链接的容量(它代表的节点旁边的链接线上的数字)在图片里。是否有任何图书馆/软件可以帮助自动创建这张图片?

我可以在Visio或某些绘图应用程序中手动执行此操作,但我想在更改/调整网络时从代码生成它们。

5 个答案:

答案 0 :(得分:7)

听起来像GraphViz的工作,它会从简短的文字说明文件中生成图表。我已经用它来生成连接的节点图,我相信应该可以根据需要添加链接标签。

答案 1 :(得分:4)

如果你正在使用python,Nodebox会绘制漂亮的图形。

答案 2 :(得分:1)

显示这样的网络的一个大问题是找出将节点放在显示屏上的位置。如果根据您的网络安排节点在逻辑上很简单,那么现成的产品可能会满足您的需求。

如果安排要复杂得多,你可能不得不接受一定数量的人工干预,以便与现成的东西一起使用,或者自己编写子弹并自行编程。

.NET是一种选择,一旦掌握了Graphics类,它就很容易使用,并且很快就可以实现这样的功能。但是,对于像这样的面向图形的东西,可能有比.NET更好的语言/平台。

更新:对于2D图形而言,.NET比我所知道的要好得多。关键是找到Bitmap类中可怜的慢GetPixel()和SetPixel()方法的快速解决方法。一旦您可以轻松快速地读取和写入单个像素,您就可以做任何您想要的程序员。

答案 3 :(得分:0)

你偶然看看R编程语言吗?我并不积极,但我相信你可以用图形制作图像。 r-project.org

答案 4 :(得分:-1)

这里有各种算法的可视化:Algorithmics Animation Workshop