Settings

Theme

Visualizing entire Chromium include graph

blog.bkryza.com

72 points by bkryza a year ago · 5 comments

Reader

kloud a year ago

Great work, very cool trick using the clang commands output to get the data.

In my experiments with software visualization I found that generic graph tools like Graphviz or Gephi do not produce useful visualizations for anything beyond trivial size projects. In systems there is always a hierarchical aspect, so hierarchical graphs seem to be clearer as in comparison [0].

Unfortunately, I am not aware of a good open source hierarchical graph tool. Only one seems to be a proprietary Visual Studio DGML renderer. However, this Chrome graph with 140k nodes would also be too much, VS chokes around 25k nodes+links.

[0] https://github.com/dundalek/stratify?tab=readme-ov-file#extr...

  • simpaticoder a year ago

    >this Chrome graph with 140k nodes would also be too much

    I've heard the rule of thumb from Tufte is that a visualization cannot have more than 1000 elements and still be useful. However, I'm not sure he said that and I cannot find supporting evidence...but it seems right to me.

    Consider that mapping programs maintain the same level of information density at every level of zoom. I'm not sure, but this might be called "semantic zoom". I remember Microsoft doing a demo of Photosynth (now defunct) years ago which demonstrated impressive results.

    One approach would be to play around with grouping nodes in useful ways, perhaps even dynamically according to user input, such that the resulting bundles represent ~100 raw nodes on average yielding ~1000 bundle nodes in the top-level visualization.

  • dekhn a year ago
adrian_b a year ago

When I have reached the first image shown after "Visualization", I have chuckled, thinking "Yeah… this is not going to be very useful".

However, immediately after that image the author has written exactly the same thought, then further in TFA much more interesting images are shown, so I have been impressed.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection