I have a large diagram generated by a script.
What I am trying to achieve is all inbound components to be kept in top, five in a row (salmon nodes), stepping to green component and then again the same for the blue components. I tried a lot playing with hidden links, layout is not respected on large number of rows. How can I force it.
Most nodes come into one big line, make it ureadable.
This is the diagram and I have to generated about 20 like it.
@startuml
skinparam nodesep 15
skinparam ranksep 10
together {
component ngacc #c8e1cc
interface ngaccpub #c8e1cc
ngaccpub-right[bold]-ngacc
}
together {
interface ngupgpub #fce5cd
component ngupg #fce5cd
ngupgpub-[bold]right-ngupg
}
ngupgpub-[#green]down->ngacc
together {
interface ngtcipub #fce5cd
component ngtci #fce5cd
ngtcipub-[bold]right-ngtci
}
ngupg-[hidden]right-ngtci
ngtcipub-[#green]down->ngacc
component ngtcd #fce5cd
ngtci-[hidden]right-ngtcd
ngtcd-[#black]down->ngacc
together {
interface ngsynpub #fce5cd
component ngsyn #fce5cd
ngsynpub-[bold]right-ngsyn
}
ngtcd-[hidden]right-ngsyn
ngsynpub-[#green]down->ngacc
together {
interface ngsmtpub #fce5cd
component ngsmt #fce5cd
ngsmtpub-[bold]right-ngsmt
}
ngsyn-[hidden]right-ngsmt
ngsmtpub-[#green]down->ngacc
together {
interface ngrgdpub #fce5cd
component ngrgd #fce5cd
ngrgdpub-[bold]right-ngrgd
}
ngsmt-[hidden]down-ngrgd
ngrgdpub-[#green]down->ngacc
together {
interface ngregpub #fce5cd
component ngreg #fce5cd
ngregpub-[bold]right-ngreg
}
ngrgd-[hidden]right-ngreg
ngregpub-[#green]down->ngacc
together {
interface ngprtpub #fce5cd
component ngprt #fce5cd
ngprtpub-[bold]right-ngprt
}
ngreg-[hidden]right-ngprt
ngprtpub-[#green]down->ngacc
component ngpcv #fce5cd
ngprt-[hidden]right-ngpcv
ngpcv-[#black]down->ngacc
together {
interface ngonlpub #fce5cd
component ngonl #fce5cd
ngonlpub-[bold]right-ngonl
}
ngpcv-[hidden]right-ngonl
ngonlpub-[#green]down->ngacc
together {
interface ngntrpub #fce5cd
component ngntr #fce5cd
ngntrpub-[bold]right-ngntr
}
ngonl-[hidden]down-ngntr
ngntrpub-[#green]down->ngacc
component ngjny #fce5cd
ngntr-[hidden]right-ngjny
ngjny-[#black]down->ngacc
together {
interface nginvpub #fce5cd
component nginv #fce5cd
nginvpub-[bold]right-nginv
}
ngjny-[hidden]right-nginv
nginvpub-[#green]down->ngacc
together {
interface ngidcpub #fce5cd
component ngidc #fce5cd
ngidcpub-[bold]right-ngidc
}
nginv-[hidden]right-ngidc
ngidcpub-[#green]down->ngacc
together {
interface ngfmtpub #fce5cd
component ngfmt #fce5cd
ngfmtpub-[bold]right-ngfmt
}
ngidc-[hidden]right-ngfmt
ngfmtpub-[#green]down->ngacc
together {
interface ngflipub #fce5cd
component ngfli #fce5cd
ngflipub-[bold]right-ngfli
}
ngfmt-[hidden]down-ngfli
ngflipub-[#green]down->ngacc
together {
interface ngetkpub #fce5cd
component ngetk #fce5cd
ngetkpub-[bold]right-ngetk
}
ngfli-[hidden]right-ngetk
ngetkpub-[#green]down->ngacc
together {
interface ngctppub #fce5cd
component ngctp #fce5cd
ngctppub-[bold]right-ngctp
}
ngetk-[hidden]right-ngctp
ngctppub-[#green]down->ngacc
together {
interface ngcpspub #fce5cd
component ngcps #fce5cd
ngcpspub-[bold]right-ngcps
}
ngctp-[hidden]right-ngcps
ngcpspub-[#green]down->ngacc
together {
interface ngcprpub #fce5cd
component ngcpr #fce5cd
ngcprpub-[bold]right-ngcpr
}
ngcps-[hidden]right-ngcpr
ngcprpub-[#green]down->ngacc
together {
interface ngcmtpub #fce5cd
component ngcmt #fce5cd
ngcmtpub-[bold]right-ngcmt
}
ngcpr-[hidden]down-ngcmt
ngcmtpub-[#green]down->ngacc
ngcmt-[#black]down->ngacc
together {
interface ngcdtpub #fce5cd
component ngcdt #fce5cd
ngcdtpub-[bold]right-ngcdt
}
ngcmt-[hidden]right-ngcdt
ngcdtpub-[#green]down->ngacc
together {
interface ngbrdpub #fce5cd
component ngbrd #fce5cd
ngbrdpub-[bold]right-ngbrd
}
ngcdt-[hidden]right-ngbrd
ngbrdpub-[#green]down->ngacc
together {
interface ngbmtpub #fce5cd
component ngbmt #fce5cd
ngbmtpub-[bold]right-ngbmt
}
ngbrd-[hidden]right-ngbmt
ngbmtpub-[#green]down->ngacc
component ngasp #fce5cd
ngbmt-[hidden]right-ngasp
ngasp-[#black]down->ngacc
component ngafw #fce5cd
ngasp-[hidden]down-ngafw
ngafw-[#black]down->ngacc
ngaccpub-[#red]->ngcdt
component ngcfa #cfe2f3
ngaccpub-[#green]down->ngcfa
ngafw-[hidden]right-ngcfa
ngaccpub-[#red]->ngcpr
ngaccpub-[#red]->ngctp
component ngiai #cfe2f3
ngaccpub-[#green]down->ngiai
ngcfa-[hidden]right-ngiai
component ngiai #cfe2f3
ngacc-[#black]down->ngiai
ngiai-[hidden]right-ngiai
ngaccpub-[#red]->ngidc
component ngids #cfe2f3
ngaccpub-[#green]down->ngids
ngiai-[hidden]right-ngids
ngaccpub-[#red]->ngonl
component ngpag #cfe2f3
ngaccpub-[#green]down->ngpag
ngids-[hidden]down-ngpag
ngaccpub-[#red]->ngrgd
ngaccpub-[#red]->ngsmt
ngaccpub-[#red]->ngsyn
ngaccpub-[#red]->ngtci
ngacc-[#red]->ngtci
ngaccpub-[#red]->ngupg
ngaccpub-[#red]->ngbmt
component ngbro #cfe2f3
ngaccpub-[#green]down->ngbro
ngpag-[hidden]right-ngbro
ngaccpub-[#red]->ngfli
component ngiah #cfe2f3
ngacc-[#black]down->ngiah
ngbro-[hidden]right-ngiah
component ngsmb #cfe2f3
ngaccpub-[#green]down->ngsmb
ngiah-[hidden]right-ngsmb
@enduml