Another possible solution:
- Draw note which contains referenced blocks as hollow circle.
- Draw referenced blocks belonging to that note as filled blocks inside the circle.
- This would be less cluttered by lines indicating membership to note and “block-nodes” would not be spread across whole graph but collected inside “note-nodes”.

-
Link-line from hollow circle to any internal or external circle would exist only when one block is referenced from another which is not referenced.
-
Thickness of the circumference would correlate to number of such links divided by diameter of hollow circle (I guess, we percieve the area).
-
force-based graph layout algorithm could be solved independently for each hollow circle containing filled circles for blocks and would also minimize diameter of hollow circle.
-
Then already existing algoritm would consider only whole notes (not blocks) and it would take into account their diameter to avoid overlap.
-
Then links would be laid over to interconnect block-subgraphs and global notes-graph.
# note [[K]]
- [[L]]
- [[M]]
- [[N]]
# note [[L]]
- A
# note [[M]]
- ![[N]]
- [[N#^D]]
# note [[N]]
- B ^B
- C: [[#^B]]
- D ^D
keywords: block, contain, container, disjunct, enclose, encapsulation, graph, nested structure, venn diagram, visualization
Related requests (similar visualization for different purposes):