I am using GraphMakie on a MetaGraphNext structure to visualise the relationship between organizations in a story. I would like to use ilabels
with the organization name in a Shell layout. However, because of the length of the string in the name, the circles become so big that they overlap each other. Is there a way to scale the diameter of the circle where the nodes lay? I know I can use nlist=Vector{Int}[]
to change in which concentric circle some nodes lay, but I would like place the node on a circle with a radius > 1
I don’t think there is a built in method for this but you may create your own layout by scaling:
mylayout = g -> Shell()(g)*2
Which should place them on a circle with radius 2.
PS: A PR which adds this feature in NetworkLayout would be welcome.
PPS: i am not sure if this can solve your original problem since the layout happens in data space but if your circles overlay eachother it’s a problem in pixelspace. Might be easier to adjust the textsize of ilabels.
1 Like
Thanks your suggestion solves it for now. However, the Shell() function is fairly intuitive and could benefit from a new kwargs. I’ll try to do the PR as you suggested, it’s time for me to learn how to contribute.