Quelle est la meilleure bibliothèque pour générer des graphes d'objets visuels en PHP (ou JavaScript) (par exemple pour représenter un réseau social) [fermé]
-
21-09-2019 - |
Question
J'ai une obligation de représenter graphiquement les relations entre un ensemble d'objets ainsi que leurs types dans une application PHP. Les relatinships seraient générés précédemment. Je cherche seulement un outil, de préférence libre, qui affiche les noeuds et leurs relations.
Je suis ouvert à PHP ou JavaScript ou quelque chose qui fonctionnera aussi longtemps qu'il ne nécessite pas (de préférence) un plugin séparé. Je pense que ce que je cherche est un peu semblable à Graphviz.
Certaines des relations entre les objets pourrait être similaire à ce qui suit. Ce sont par exemple.
Sam->(knows)->Mark /* Relationship is explicitly defined */
Shannon->(may know)->Jennifer /* Relationship is inferred */
Linda->(is Married to)->Neville /* Relationship is defined but information is missing (i.e. gender) to determine which node fills which role (i.e. husband, wife) */
Carl->(is Related to)->John /* Relationship is defined but parameters are completely unknown */
S'il vous plaît noter que deux objets peuvent également partager des relations multiples.
Mary->(is Boss)->John
Mary->(is Wife)->John
Mary->(has children with)->John
Le graphique doit représenter non seulement les noeuds, mais aussi leur relation. La bibliothèque graphique doit être un peu interactif de sorte qu'un nœud ou la relation peut être cliqué sur le bouton pour activer une action - comme la recherche (de préférence par AJAX) d'informations supplémentaires. (Serait encore plus préférable de laisser l'action se produire sur mouseover.)
La bibliothèque de comprendre les relations. Il n'a besoin que d'être en mesure de démontrer qu'il existe une relation et inclure le texte approprié décrivant la relationip qui est fournie lorsque le diagramme est généré.
Quelle est la meilleure bibliothèque pour accomplir cette tâche? Même s'il n'y a pas une seule bibliothèque qui répond pleinement à la demande, s'il est celui qui se rapproche mais il est extensible, ce serait bon de savoir aussi.
Merci!
La solution
Vous pouvez disposer d'une représentation visuelle assez facilement avec yUML . Par exemple, si vous vouliez souligner que « John est marié à Marie, et travaille pour Mark », vous pouvez faire ce qui suit:
[John]->(works for)->[Mark]
[John]->(married to)->[Mary]
Ce qui génère les éléments suivants:
Autres conseils
Graphviz est ce que je trouve être le plus avancé bibliothèque avancée pour le rendu des graphiques. Il est Intégration PHP via Pear . Les comprennent ceux qui correspond à votre requirenments .
Voir aussi ma question qui est un peu liée à la vôtre: générer Programatically modèles / schémas graphiques (ADAPT) de données structurées