J'ai un grand graphique que je traite en utilisant JUNG. Je me demandais si JUNG fournit un moyen d'extraire un voisinage de deux sauts d'un sommet (complet avec tous les bords entre eux) dans un graphique séparé?Extraire un sous-graphe d'un graphe en utilisant JUNG?
Répondre
Try edu.uci.ics.jung.algorithms.connectivity.KNeighborhoodExtractor
Dans JUNG 2.0 il est edu.uci.ics.jung.algorithms.filters.KNeighborhoodFilter:
Un filtre utilisé pour extraire le k-voisinage autour d'un ou plusieurs nœud racine (s). Le voisinage-k est défini comme le sous-graphe induit par l'ensemble de sommets qui sont k ou moins de sauts (distance non pondérée du plus court chemin) en s'éloignant du nœud racine.
Voilà comment vous utiliseriez (vous avez déjà en supposant un graphique et sommet/types arêtes):
Graph<V, E> graph = // ...
int k = 3; // maximum hops
V startVertex = // ... (pick your starting node)
Filter<V, E> filter = new KNeighborhoodFilter<V, E>(
startVertex, k, EdgeType.IN_OUT);
Graph<V, E> neighborhood = filter.transform(graph);
Le graphique neighborhood
sera de la même classe que votre graphique d'origine. Vous devrez créer un nouveau filtre pour chaque noeud de démarrage différent.
pouvez-vous fournir un exemple de code? – Daniel
@Christoph, merci de poster cet exemple de code, ça m'a beaucoup aidé. Je sais que ce billet a quatre ans, mais bon, je viens juste de tomber sur cette réponse et c'est de loin la meilleure. Cela devrait être marqué comme la bonne réponse! – David
- 1. Création d'une matrice d'adjacence à partir d'un graphe JUNG
- 2. Comment extraire un MFCC en utilisant C#
- 3. Comment utiliser GraphMLReader2 dans Jung?
- 4. Générer un graphe de distribution normale en utilisant C#
- 5. Comment créer la mise en page Grille en JUNG
- 6. Comment extraire un mot en utilisant regex en php?
- 7. Can Jung graphiques apparaissent au même endroit à chaque fois?
- 8. Comment créer un graphe "Clustergram"? (En R)
- 9. Comment extraire un segment vidéo d'une vidéo en utilisant FFMPEG?
- 10. Travailler avec un graphe orienté utilisant RGL dans Ruby
- 11. en utilisant jQuery $ pour extraire des données
- 12. Comment transformer un graphe très cyclique non orienté en un graphe acyclique orienté?
- 13. Extraire des images en utilisant iTextSharp
- 14. Comment extraire des valeurs en utilisant javascript?
- 15. Extraire la valeur lang en utilisant JavaScript
- 16. extraire des caractères en utilisant des délimiteurs
- 17. JUNG: comment former des sommets sélectionnables
- 18. VB.net Réseau Code/algorithme de graphe
- 19. Transposition sur un graphe orienté
- 20. étiquette Vertex dans la visualisation graphique JUNG
- 21. Performance de l'algorithme du plus court chemin dans l'API JUNG
- 22. Comment extraire du contenu HTML en utilisant Regex en PHP
- 23. Objectif-C - Guide pour créer un graphe
- 24. Comment extraire un fichier rar en C#?
- 25. Traverser un graphe d'objet C# arbitraire en utilisant XPath/appliquer des transformations XSL
- 26. Comment puis-je publier un message à une liste en utilisant le graphe de Facebook api
- 27. Déterminer si un graphe non orienté peut être coloré en utilisant seulement 2 couleurs
- 28. Comment utiliser un graphe orienté BGL comme un graphe non orienté (à utiliser dans un algorithme de mise en page)?
- 29. Traverser un graphe Vs Traverser un arbre
- 30. Comparaison d'un graphe linéaire généré par l'utilisateur avec un graphe généré aléatoirement par un programme
C'est à partir de la JUNG 1.x maintenant très périmée. La réponse ci-dessus est correcte. –