Dibujar un grafo con Graphviz (WinGraphviz - C# .NET Framework 4)

/*Dibuja un grafo descrito por una cadena escrita con la sintaxis de DOT (Lenguaje de Graphviz) Para poder utilizar el snippet es necesario ejecutar VisualStudio como administrador ;)*/ public static Image dibujarGrafo(String grafo_en_DOT) { WINGRAPHVIZLib.DOT dot = new WINGRAPHVIZLib.DOT(); WINGRAPHVIZLib.BinaryImage img = dot.ToPNG(grafo_en_DOT); byte[] imageBytes = Convert.FromBase64String(img.ToBase64String()); MemoryStream ms = new MemoryStream(imageBytes, 0, imageBytes.Length); ms.Write(imageBytes, 0, imageBytes.Length); Image imagen = Image.FromStream(ms, true); return imagen; }
Este fragmento de código retorna un objeto de tipo Image con la imagen del grafo (para usar, por ejemplo, en un control PictureBox). Para su correcto funcionamiento es necesario: Instalar Graphviz ( http://goo.gl/cXSUP5); Instalar WinGraphviz ( http://goo.gl/ZjHePT); Importar la referencia del archivo dll al proyecto en Visual Studio (WinGraphviz.dll); Agregar la sentencia 'using WINGRAPHVIZLib;' para poder utilizar los componentes de WinGraphviz.

Be the first to comment

You can use [html][/html], [css][/css], [php][/php] and more to embed the code. Urls are automatically hyperlinked. Line breaks and paragraphs are automatically generated.