2009-05-11 29 views
6

Sto cercando un modo per disegnare grafici diretti in PHP. (come in http://upload.wikimedia.org/wikipedia/commons/0/08/Directed_acyclic_graph.png). Voglio che crei un'immagine del grafico proprio come GD può produrre un'immagine.Come si fa a disegnare graficamente in PHP?

Ho cercato su Google molto, ma posso trovare solo molte librerie per disegnare grafici in generale (con barre ecc.), Non grafici diretti.

P.S. Ho provato a usare dot (il programma linux) tramite system(), ma sfortunatamente non ho il permesso di farlo sul server. Inoltre, non ho il diritto di installare estensioni PHP e cose del genere sul server, quindi dovrebbe funzionare con PHP normale (idealmente solo includendo un file).

Grazie in anticipo.

+0

Perché non puoi farlo utilizzando gd? Sarebbe relativamente banale, devi solo tenere traccia di dove si trova ogni nodo. Vuoi semplicemente dare l'elenco dei nodi e a cosa si connettono e genera automaticamente il grafico diretto? –

+0

Ho provato questo, ma è abbastanza complesso farlo funzionare senza (per molti) bug, si traduce in grafici davvero brutti formattati. Il problema più grande è la struttura della rete, evitare di attraversare molte linee ecc. – openbas2

risposta

3

Ho trovato un PEAR interface to GraphViz; Non l'ho mai usato prima quindi non posso darti alcuna raccomandazione personale se è buona o cattiva. (ma forse questo non risolve il problema dal momento che dici di non poter installare applicazioni)

+0

Sarebbe davvero una buona soluzione, ma PEAR non è purtroppo installata sul mio account e non ho alcun diritto di farlo da solo. – openbas2

+5

È anche possibile scaricare manualmente il pacchetto e le sue dipendenze. Non è necessario il programma di installazione PEAR per utilizzare i pacchetti PEAR. –

3

Non sono a conoscenza di alcuna implementazione di visualizzazione grafica in php.

Tuttavia vi consiglio di prendere in considerazione il disegno del grafico con javascript, per esempio con la libreria canviz JS che funziona sulla maggior parte dei browser (sì, tra cui IE 6 & 7, ma non 8 attualmente).

0

Dopo una rapida ricerca su Google, ho trovato graph.php, che nei commenti afferma che collega i nodi tramite gli archi, le linee rette vice nell'esempio fornito, ma potrebbe essere un buon passo nella giusta direzione.

+0

Forse mi manca qualcosa, ma per quanto posso vedere, questa è solo la struttura dei dati (che ho già). Non sembra disegnare il grafico? – openbas2

+0

Sì, l'ho notato mentre mi stavo preparando a metterlo in uso. Pensavo che il codice su quella pagina fosse troncato. Mi dispiace per quello. – qat

0

ho utilizzare PHP per generare JSON che viene consumato dal sistema d3 force-directed graph. Quindi il display è tutto lato client gestito, tutto quello che devo fare è prendere le giuste strutture dati JSON ...

-FT

Problemi correlati