In the past when I've done this it was with Commons categories which tend to be much funnier and in some circumstances a bit more orderly I think? I dunno, a comparison would be fun.
This is all done via the amazingly awesome vcat as a base by the way. https://meta.wikimedia.org/wiki/User:Dapete/vCat#English
Maybe I should make my own fork of it that specifically automates this kind of visualization.
To illustrate what I mean regarding Gephi...
Basically I dunno how to do good hierarchal graphs in it. I'm inversely weighting by distance to the root node, but it still ends up being a giant cobweb.
https://commons.wikimedia.org/wiki/File:Actinostola.jpg
Buildings by Eero Saarinen → University of Chicago Law School → Faculty of the University of Chicago Law School → Barack Obama → Barack Obama citizenship conspiracy theories → Donald Trump → Presidencies of Donald Trump → Second presidency of Donald Trump → 2025 United States government online resource removals → Files at risk due to the 2025 United States government online resource removals → PD US NOAA
Came up with this which gives some pleasing results. This time colors are assigned randomly starting at the file's categories and they then flow and mix upwards so you can see where categories start to dilute into one another. Dot size is proportional to degree (number of subcats + parent cats), with the black dot at the bottom having arbitrary size and being this starting file:
https://commons.wikimedia.org/wiki/File:The_Bug_Peek.jpg
Clickable version of this image is at https://pprogs.blog/svgs/bugpeek.svg
#Graphviz oneliner (save the downloaded .dot locally if you use this!)
DEPTH=5 WIKI="commonswiki" PAGE="File:The_Bug_Peek.jpg" curl "https://vcat.toolforge.org/render?wiki=$WIKI&title=$PAGE&depth=$DEPTH&limit=100000&format=gv&links=wiki" | dijkstra ROOT0 | gvpr -c 'BEG_G {concentrate="true"; mclimit=100; label=""; flow="back"; Defcolor="black"; nodesep=0.04; ranksep=0.1} E {arrowhead="none"; penwidth=0.2} N {shape="point"; width=degree/10.0} N [$.name == "ROOT0"] {width=3.0} N [$.dist == 1.0] {color=sprintf("%f+0.8+1", rand())}' | dot | gvcolor | dot -Tsvg -o out.svg