Layouts of graphs with multiple components
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- julia
- Ambito
- data-visualization
Direzione di ricerca
Riproduci l’esempio disconnesso con due copie usando GraphMakie ed esamina le implementazioni dei layout Stress, Spectral e SFDP. Determina come vengono gestite le componenti connesse; il lavoro è completato quando ogni componente mantiene un layout utile e le componenti vengono successivamente disposte senza una separazione eccessiva.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Several of the layout algorithms produce not-very-useful layouts if the input graph is not connected, i.e., has more than one connected component.
For example:
using GLMakie, GraphMakie, Graphs
g = wheel_graph(4)
es = collect(edges(g))
g2 = Graph(vcat(es, [Edge(e.src + nv(g), e.dst + nv(g)) for e in es])) # make two unconnected copies of `g`
graphplot(g2; layout=Spring())
Produces:
Which has at least two issues:
- The two graphs are seemingly unnecessarily far apart.
- The layout of each individual component is worse than it would be for a single component (compare with
graphplot(g, layout=Spring())below):
From testing, Stress, Spectral, and especially SFDP have this issue. Stress probably also has the issue, but it is less pronounced. E.g., here's graphplot(g2; layout=SFDP()):
I think it would make sense to apply these layout algorithms on the connected components of a graph individually, and then somehow layout their components subsequently.
- Lingua principale
- Julia
- Stelle
- 109
- Fork
- 26
- Merge medio
- 2g 8h
- PR unite (30g)
- 3
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di JuliaGraphs/NetworkLayout.jl
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
JuliaGraphs/NetworkLayout.jl#67 · 6 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 32/100
JuliaGraphs/NetworkLayout.jl#63 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
JuliaGraphs/NetworkLayout.jl#55 · 2 reazioni ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
JuliaGraphs/NetworkLayout.jl#33 ·
I maintainer di solito rispondono entro 1 giorno
-
Enhancement: Directed Acyclic Graph LayoutForse di nuovo libera Una pull request per questa issue è stata chiusa senza essere unita. Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
JuliaGraphs/NetworkLayout.jl#20 · 7 commenti · 5 reazioni ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di JuliaGraphs/NetworkLayout.jl
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
SciML/OrdinaryDiffEq.jl#4875 ·
I maintainer di solito rispondono entro 3 giorni
-
documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
SciML/NonlinearSolve.jl#1372 ·
I maintainer di solito rispondono entro 1 giorno
-
Truncated discrete ccdf and logccdf return incorrect values at the lower atomForse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
JuliaStats/Distributions.jl#2095 ·
-
documentation 📜 microphysics💧 ❄️
Difficoltà 2/5 1-3 ore Idoneità per principianti 63/100
NumericalEarth/Breeze.jl#1073 ·
I maintainer di solito rispondono entro 1 giorno