2009-04-10 3 views
51

Sto cercando una libreria (gratuita) che mi permetta di disegnare un CFG (grafico del flusso di controllo). Qualcosa come yFiles, ma gratis o preferibilmente open source? Idealmente questa libreria consentirebbe all'utente di navigare nel grafico (e modificarlo), cioè il grafico non è solo un bitmap statico reso a priori. Idee?Libreria di disegni del grafico C#?

Aggiornamento:
Glee in combinazione con la libreria QuickGraph citato sembra funzionare abbastanza piacevole. thx

Update2: Graph# sembra essere la libreria più potente attualmente. C'è anche un bel tutorial su come usarlo.

+2

GLEE viene ora chiamato [Layout grafico automatico Microsoft] (http://research.microsoft.com/en-us/projects/msagl/) (MSAGL). MSAGL è distribuito solo in forma binaria. Una licenza commerciale deve essere acquistata. –

+0

Non sono sicuro della soluzione, ma forse potrebbe essere utile anche: https://github.com/komorra/NodeEditorWinforms – komorra

+0

le risposte sono troppo obsolete! – ananda

risposta

24

Si potrebbe voler controllare QuickGraph.

NodeXL potrebbe anche essere di interesse (libreria di visualizzazione). È WPF, ma puoi usare un contenitore per ospitarlo se hai bisogno di WinForms.

+0

Sembra interessante, anche se questa sembra essere la "parte dell'algoritmo", non la "parte di visualizzazione", giusto? – newgre

+0

Appena aggiunto alcune informazioni su NodeXL, che è un'API di visualizzazione. – dommer

+1

NodeXL è un modello per Excel, è davvero adatto per C#? – kristianp

11

Prova questo (algoritmo efficiente Sugiyama è tuo amico):

Graph#

3

Io uso GraphViz per generare questo tipo di grafico. La mia app genera il file .dot che può quindi essere passato in GraphViz. Supporta un carico di formati di file, come ad esempio bmp, jpg, png, pdf, ecc ecc svg