Day 32: SF DA Org Chart as a Living Network

Day 32: 350+ person org as a breathing force-directed network. SF DA office client work, Q2 2022. #100DayMapChallenge.
Day 32: Force-directed organizational chart with staff photo nodes - #100DayMapChallenge

Day 32. Organizational structure as a living network 💼

How do you visualize a 300+ person organization when static hierarchies fail to show how departments actually relate?

This interactive force-directed chart was built for the San Francisco District Attorney’s Office. It was also my first significant freelancing project, where I worked with Anna Tong on a graphical representation of all 350+ people in the organization.

Each node represents a department, role, or staff member. Instead of a rigid top-down hierarchy, a physics simulation positions nodes based on relationships. Departments expand and collapse on click, and staff photos appear inside circular nodes. The simulation keeps running as users explore the structure, allowing it to adjust and “breathe”.

The main challenge was integrating images and text inside the circular DOM nodes while keeping everything readable. D3.js powers the force simulation and DOM updates, while custom logic handles state transitions and image loading.

The goal was not to reproduce a traditional org chart, but to reflect how organizations actually function. Real institutions behave more like networks than trees. Reporting lines overlap. Collaboration crosses formal boundaries. A static diagram freezes that complexity. A force-directed model can reveal it.

Completed in Q2 2022. The question remains relevant: when structure becomes too complex for conventional diagrams, what do you build instead?

Live demo: SF DA org chart (mapgrnd)

The project

PieceRole
ClientSF District Attorney office (with Anna Tong)
LayoutForce simulation; expand/collapse departments
NodesPhotos + text in circular DOM nodes
StackD3.js force + custom state / image loading

How to follow

#100DayMapChallenge · Day 32/100 · LinkedIn

Previous: Day 31: Sakura Bloom

Next: Day 33: California BDR 3D

Leave a Reply

Your email address will not be published. Required fields are marked *