Algorithmes de layout "igraph" dans Rstudio
dans Statistiques
Bonjour
J'ai une question sur les algorithmes de layout de la librairie igraph dans Rstudio (je suppose que bcp d'entre vous ont utilisé ce logiciel et cette librairie puisque l'on est dans la rubrique Statistiques).
Je fais actuellement une recherche dans le cadre de la conjecture de Collatz. Pour faire ultra-court mais que vous ayez une idée des données, je transforme chaque chemin vers 1 en un couple de données $i(n),p(n)$ qui représente le nombre d'étapes impaires et paires avant la dernière étape impaire avant 1. Comme par exemple le chemin de 19 :
5, 13, 17, 11, 29, 19
devient
001_000, 002_003, 003_005, 004_006, 005_009, 006_010
Donc entre deux sommets (nodes) comme 005_009 et 006_010, on a une arête (edge) : 005_009<--006_010 (target<--source)
J'exporte vers Rstudio une liste de "edges" (links_test)
Source, Target
002_001, 001_000
002_003, 001_000
003_005, 002_003
004_006, 003_005
005_007, 004_006
006_009, 005_007
002_005, 001_000
003_006, 002_005
...
de nodes (nodes_test)
ID, Weight
001_000, 496
002_001, 13
002_002, 10
002_003, 225
....
Le "weight" est le nombre d'occurrences des targets
Dans Rstudio je fais un dataframe avec ces deux fichiers :
net_test <- graph_from_data_frame(d=links_test, vertices=nodes_test, directed=TRUE)
et pour le "weight"
V(net_test)size <- V(net_test)Weight*1
Je ne fais rien de spécial pour la fonction" layout" avec le plot (sachant que la librairie igraph est chargée)
plot(net_test, edge.arrow.size=0.1, vertex.label.font=0.0001, vertex.color = adjustcolor("SkyBlue2", alpha.f = .25))
Donc c'est bien le plot qui choisit de lui-même le layout qui convient.
J'ai remarqué que plus la bdd grossit, plus les "brins" qui semblent partir de la "corde" vient se tresser sur celle-ci. Dans les trois graphes joints on est de 3 à 101, de 3 à 1001 puis de 3 à 120.001. Les brins qui semblent s'échapper dans les petites bdd sont totalement intégrés dans la grande corde du graphe du haut (bdd 3 à 120.001). Ce que j'ai pu vérifier en zoomant à fond dans ce graphe.
Donc les questions sont :
1) Quel algorithme est à l'œuvre par défaut dans la fonction plot avec igraph dans ce genre de cas ?
2) que se passe-t-il au juste et pourquoi les brins qui s'échappent à une certaine taille de bdd s'unissent quand elle augmente ?
3) il y a-t-il des fonctions pour analyser le graphe, un truc qui donnerait des infos sur la spatialisation du graphe et les "forces" qui unissent ou dispersent les nodes ?
Note : j'ai surtout trouvé des infos dans ce lien
https://f.hypotheses.org/wp-content/blogs.dir/2996/files/2017/02/visualiseR.pdf
mais pas toutes les réponses, hélas
Merci de votre aide...
J'ai une question sur les algorithmes de layout de la librairie igraph dans Rstudio (je suppose que bcp d'entre vous ont utilisé ce logiciel et cette librairie puisque l'on est dans la rubrique Statistiques).
Je fais actuellement une recherche dans le cadre de la conjecture de Collatz. Pour faire ultra-court mais que vous ayez une idée des données, je transforme chaque chemin vers 1 en un couple de données $i(n),p(n)$ qui représente le nombre d'étapes impaires et paires avant la dernière étape impaire avant 1. Comme par exemple le chemin de 19 :
5, 13, 17, 11, 29, 19
devient
001_000, 002_003, 003_005, 004_006, 005_009, 006_010
Donc entre deux sommets (nodes) comme 005_009 et 006_010, on a une arête (edge) : 005_009<--006_010 (target<--source)
J'exporte vers Rstudio une liste de "edges" (links_test)
Source, Target
002_001, 001_000
002_003, 001_000
003_005, 002_003
004_006, 003_005
005_007, 004_006
006_009, 005_007
002_005, 001_000
003_006, 002_005
...
de nodes (nodes_test)
ID, Weight
001_000, 496
002_001, 13
002_002, 10
002_003, 225
....
Le "weight" est le nombre d'occurrences des targets
Dans Rstudio je fais un dataframe avec ces deux fichiers :
net_test <- graph_from_data_frame(d=links_test, vertices=nodes_test, directed=TRUE)
et pour le "weight"
V(net_test)size <- V(net_test)Weight*1
Je ne fais rien de spécial pour la fonction" layout" avec le plot (sachant que la librairie igraph est chargée)
plot(net_test, edge.arrow.size=0.1, vertex.label.font=0.0001, vertex.color = adjustcolor("SkyBlue2", alpha.f = .25))
Donc c'est bien le plot qui choisit de lui-même le layout qui convient.
J'ai remarqué que plus la bdd grossit, plus les "brins" qui semblent partir de la "corde" vient se tresser sur celle-ci. Dans les trois graphes joints on est de 3 à 101, de 3 à 1001 puis de 3 à 120.001. Les brins qui semblent s'échapper dans les petites bdd sont totalement intégrés dans la grande corde du graphe du haut (bdd 3 à 120.001). Ce que j'ai pu vérifier en zoomant à fond dans ce graphe.
Donc les questions sont :
1) Quel algorithme est à l'œuvre par défaut dans la fonction plot avec igraph dans ce genre de cas ?
2) que se passe-t-il au juste et pourquoi les brins qui s'échappent à une certaine taille de bdd s'unissent quand elle augmente ?
3) il y a-t-il des fonctions pour analyser le graphe, un truc qui donnerait des infos sur la spatialisation du graphe et les "forces" qui unissent ou dispersent les nodes ?
Note : j'ai surtout trouvé des infos dans ce lien
https://f.hypotheses.org/wp-content/blogs.dir/2996/files/2017/02/visualiseR.pdf
mais pas toutes les réponses, hélas
Merci de votre aide...
Connectez-vous ou Inscrivez-vous pour répondre.
Bonjour!
Catégories
- 165.1K Toutes les catégories
- 59 Collège/Lycée
- 22.1K Algèbre
- 37.5K Analyse
- 6.3K Arithmétique
- 58 Catégories et structures
- 1.1K Combinatoire et Graphes
- 13 Sciences des données
- 5.1K Concours et Examens
- 20 CultureMath
- 51 Enseignement à distance
- 2.9K Fondements et Logique
- 10.7K Géométrie
- 83 Géométrie différentielle
- 1.1K Histoire des Mathématiques
- 79 Informatique théorique
- 3.9K LaTeX
- 39K Les-mathématiques
- 3.5K Livres, articles, revues, (...)
- 2.7K Logiciels pour les mathématiques
- 24 Mathématiques et finance
- 337 Mathématiques et Physique
- 5K Mathématiques et Société
- 3.3K Pédagogie, enseignement, orientation
- 10.1K Probabilités, théorie de la mesure
- 801 Shtam
- 4.2K Statistiques
- 3.8K Topologie
- 1.4K Vie du Forum et de ses membres