Visualizing People and Relationships

While I’m thinking about digraphs and visualization, I want to describe another idea for a website I have been mulling over. It would offer a way to see the relationships between people using a digraph rendering engine.

There would be a central organizing theme for a given rendering. It might be the current political scandal, an emergency response plan, a corporate organizational chart, or any other theme by which people are related to each other. Each theme would have a rendering of the current members and their relationships, as a digraph. Users could add people (nodes) and relationships (edges). Relationships could have supporting documentation in the form of URLs (useful for scandal tracking).

The UI would not need to be very complicated. To add information, you just need a simple form with 2 fields for node names, a description of the relationship, and optional URLs to supporting documentation. You could get fancy with auto-completion of the node names, but that’s just a detail. Editing a node/edge uses a similarly simple form. Each theme page would also have an RSS feed, of course, of changes.

It would also be useful to be able to see the themes a node was involved in, as an alternate view. So an individual lawmaker might show up in a theme for a campaign and a general legislative topic.

As with any social site, suppressing malicious input might be tricky. Using the wikipedia model of allowing anyone to edit anything, flag content as suspicious, and block edits to prevent flame-type wars might be enough.

All of the graphs should be available as image files. The question is, are they rendered on the fly or on some regular basis? That would depend on how expensive the rendering is. Obviously they only need to be re-rendered after a change, so we want to cache the output files.