Family Graph

Family Graph was written for and inspired by a tradition of my college at uni to allow non-finalists to 'marry', and thus be assigned 'children' from the ensuing batch of freshers. Parents are then a handy point of contact for newcomers, treat them to a formal dinner, and are then free to lavish love and attention on. Or grow cold and distant from, whichever.

Anyway, the lack of law or morality being applied to these marriages means that gender, blood ties, number of parents, and basic genetics are all willfully ignored, producing a structure often unfit for a standard family tree layout. College genealogy remains of interest to some, however, and so I was asked by a friend to produce a program to display the entire Sidney family tree. I pointedly refused, of course, but then nearly a year later decided to come at the problem from a slightly less formal angle.

The result, of course, was this piece of software. It's written in Java, so you'll need Java 1.5 to run it. Family Graph is quite happy as either an applet on a website or running locally as a standard application. You can see it on the Sidney Family Graph page displaying (some of) the Sidney Sussex College family tree. If you'd rather tinker offline, the application version with some dummy data is available here.

To install and run Family Graph locally, first download the zip file, extract it with a utility of your choice. Windows users may then simply double click the 'run.bat' file. Linux users can execute 'run'. Other people will have to invoke java -jar familygraph.jar themselves, because they are rarer, and I cannot be bothered catering for them.

Controls are hopefully fairly simple, and are largely mouse based. Left-click and drag lets you pan the view around. Right-click and drag lets you move around the node you clicked on. Using the scrollwheel (or holding [ctrl] whilst right-click dragging) allows you to zoom. Further controls are accessed via the popup panel at the bottom of the screen, and should be self-explanatory. Holding [ctrl] and clicking on a subject or year in the Filter tab selects that item, and deselects all others. Holding [shift] and clicking does the inverse. To highlight a relation, hold down ctrl and then click first one person's box, and then hold down ctrl and click on a second person's box. A path between them will be highlighted, if a relation exists, and the Relation tab will textually describe that relation.

As for a key, well, boys are blue, girls are pink, marriages are represented by those little grey blobs. The parents in a marriage are connected to it by a solid line, and the children by a dashed blue line.

Those wishing to create their own data should modify the nodes.txt file supplied with the .zip file distribution. Clearly, the input should really be xml based, but I was lazy, so it isn't. As a result, you have to be very, very careful about modifying that file. The parser is essentially untested and not, I suspect, very robust. Good luck.

Hopefully that's enough to get all you going. Enjoy.



Downloads: - Zip file containing the Family Graph java executable (.jar), along with dummy data (nodes.txt) and a batch file to launch the program in windows (run.bat)