Domanda

Quali algoritmi sono utili per il disegno grafico interattivo / in tempo reale per dati in tempo reale e manipolazione diretta?

In caso contrario, quali librerie usi per disegnare grafici?

suggerimenti;

  • Prefuse toolkit di visualizzazione delle informazioni
  • altri?

A proposito, intendo grafici nel senso della teoria dei grafi - punti e linee

  • qualsiasi lingua
  • per live intendo che il grafico dovrebbe essere manipolabile una volta sullo schermo.
È stato utile?

Soluzione

Consiglierei qualsiasi biblioteca su cui Jeff Heer abbia lavorato:

Credo che tutti e tre i progetti siano open source. Jeff Heer è abbastanza bravo a fare riferimento a documenti nel suo codice almeno nella biblioteca di Prefuse. Guardando la fonte Prefuse:

BalloonTreeLayout : l'algoritmo utilizzato è quello di G. Melan & # 231; su e I. Herman dal loro documento di ricerca Disegni circolari di alberi radicati, Rapporti del Centro di matematica e scienze informatiche, Rapporto Numero INS & # 8211; 9817, 1998.

ForceDirectedLayout.java : nessun riferimento menzionato, ma ci sono molti commenti che descrivono come funziona.

FruchtermanReingoldLayout.java : riferimenti Jung . Sul loro sito web ho trovato un che fa riferimento a vari algoritmi

NodeLinkTreeLayout.java : l'algoritmo utilizzato è quello di Christoph Buchheim, Michael J & # 252; nger e Sebastian Leipert dal loro articolo di ricerca Miglioramento dell'algoritmo di Walker per l'esecuzione in tempo lineare , disegno grafico 2002. Questo algoritmo corregge i problemi di prestazioni dell'algoritmo di Walker, che generalizza il metodo di Reingold e Tilford per i disegni ordinati di alberi per supportare alberi con un numero arbitrario di bambini in un dato nodo.

RadialTreeLayout.java : l'algoritmo utilizzato è quello di Ka-Ping Yee, Danyel Fisher, Rachna Dhamija e Marti Hearst nel loro documento di ricerca Esplorazione animata di grafici dinamici con layout radiale , InfoVis 2001. Questo algoritmo calcola un layout radiale che tiene conto di possibili variazioni nelle dimensioni e mantiene entrambi gli orientamenti e ordinare vincoli per facilitare transizioni fluide e comprensibili tra configurazioni di layout.

SquarifiedTreeMapLayout : questo particolare algoritmo è tratto da Bruls, D.M., C. Huizing e J.J. van Wijk, "quotature di mappe quadrate" In Data Visualization 2000, Atti del Euratom congiunto e IEEE TCVG Sumposium on Visualization , 2000, pagg. 33-42. Disponibile online all'indirizzo http://www.win.tue.nl/~vanwijk/stm .pdf . Per ulteriori informazioni su TreeMaps in generale, consultare http://www.cs.umd.edu / hcil / treemap-storia

Altri suggerimenti

il toolkit di visualizzazione di prefuse sembra un buon candidato.

  

Prefuse supporta un ricco set di   funzionalità per la modellazione dei dati,   visualizzazione e interazione. esso   fornisce strutture dati ottimizzate per   tabelle, grafici e alberi, una miriade di   layout e tecniche di codifica visiva,   e supporto per l'animazione, dinamica   query, ricerca integrata e   connettività al database. Prefuso è   scritto in Java, usando Java 2D   libreria grafica, ed è facilmente   integrato in Java Swing   applicazioni o applet web. Prefuse   è concesso in licenza ai sensi di un BSD   licenza e può essere utilizzato liberamente per   sia commerciale che non commerciale   scopi.   (dalla homepage)

Il disegno grafico è un campo ampio. Ecco un link a un sito web della comunità di ricerca per il disegno di grafici . Hanno una conferenza annuale specifica sul disegno grafico. Posso anche suggerire di leggere alcuni dei Prof. Pubblicazioni di David Harel - una delle sue aree di ricerca è il disegno grafico, ad esempio questo documento . Questo sembra un problema difficile da risolvere nel caso generale. Forse puoi limitare l'applicazione a un sottoinsieme limitato di grafici (i grafici planari sono probabilmente troppo restrittivi). Probabilmente grafici semplici con una piccola serie di vertici consentono una manipolazione più semplice.

Uso il linguaggio Dot per descrivere i grafici. Inoltre, l'output del compilatore Dot include SVG, che è in XML e può essere incorporato in XHTML.

http://en.wikipedia.org/wiki/DOT_language

Non sono sicuro di cosa stai cercando ...

sembra che forse stai cercando di fare qualcosa di simile a rrdtool?

Forse ci sono alcune informazioni sul loro sito che aiuteranno:

http://oss.oetiker.ch/rrdtool/

Sono nuovo su Stackflow, quindi scusate la risposta tardiva. A seconda di quanto interattivo vuoi ottenere ... potresti anche non voler controllare Flot (utilizza JQuery, meno interattivo) o elaborazione ... più interattiva.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top