2009-04-10 18 views
51

Estoy buscando una biblioteca (gratuita) que me permita dibujar un CFG (gráfico de flujo de control). Algo como yFiles, ¿pero gratis o de preferencia de código abierto? Idealmente, esta biblioteca permitiría al usuario navegar por el gráfico (y modificarlo), es decir, el gráfico no es solo un mapa de bits estático a priori renderizado. Ideas?C# graph drawing library?

Actualización:
Glee en combinación con la biblioteca QuickGraph mencionado parece que funciona bastante bien. thx

Update2: Graph# parece ser la biblioteca más potente actualmente. También hay un buen tutorial sobre cómo usarlo.

+2

GLEE se llama ahora [Diseño de gráfico automático de Microsoft] (http://research.microsoft.com/en-us/projects/msagl/) (MSAGL). MSAGL se distribuye solo en forma binaria. Se debe comprar una licencia comercial. –

+0

No estoy seguro acerca de la solución, pero tal vez esto también podría ser útil: https://github.com/komorra/NodeEditorWinforms – komorra

+0

¡las respuestas están demasiado desactualizadas! – ananda

Respuesta

24

Es posible que desee comprobar QuickGraph.

NodeXL también podría ser de su interés (librería de visualización). Es WPF, pero puede usar un contenedor para alojarlo si necesita WinForms.

+0

Parece interesante, aunque esta parece ser la "parte del algoritmo", no la "parte de visualización", ¿verdad? – newgre

+0

Acabo de agregar algo de información sobre NodeXL, que es una API de visualización. – dommer

+1

NodeXL es una plantilla para Excel, ¿es realmente adecuada para C#? – kristianp

11

Prueba este (algoritmo eficiente Sugiyama es su amigo):

Graph#

3

utilizo GraphViz para generar este tipo de gráfico. Mi aplicación genera el archivo .dot que luego se pasa a GraphViz. Soporta una carga de formatos de archivo, como BMP, JPG, PNG, PDF, SVG, etc, etc