/*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.