Family trees + visualisation

595 views
Skip to first unread message

rakugo

unread,
Oct 6, 2009, 6:27:35 AM10/6/09
to TiddlyWiki
I'm not sure how interesting genealogy is within the TiddlyWiki
community but I have recently finished a first version of a family
tree vertical for TiddlyWiki.

I am posting it to the community in case there is an interest in me
developing this any further...

Blog post: http://www.jonrobson.me.uk/posts/Finally%20a%20Family%20Tree%20Vertical
Example Demo: http://www.jonrobson.me.uk/familytree/

Jon

Tobbe

unread,
Oct 6, 2009, 8:25:14 AM10/6/09
to TiddlyWiki
Absolutely :) I look into it now with joy

//Tobbe

Tobbe

unread,
Oct 6, 2009, 8:46:07 AM10/6/09
to TiddlyWiki
Hi Jon,

At first glance i looks good...but I don't fancy the layout/gui or
what shall I call it. If I look into StyleSheet there is alot of
things going on there and I don't wanna mess things up to much. I
wanna have a clean layout, almost like the default TiddlyWiki with
your FamilyPlugin and all the other stuff. Maybe a nice logo on the
header. It's to "messy" for my eye (I only have one to see with). So a
cleaner, simplear layout and I would be very happy. I'm gonna play
with it now to get familiar with it.

You have done a splendid job and I'm looking forward to see further
improvments.

A million thanks

//Tobbe

jdlrobson

unread,
Oct 6, 2009, 9:22:29 AM10/6/09
to TiddlyWiki
Feel free to make a more traditional styled version of this. I would
be keen to provide alternative stylesheets using TiddlyWeb.
To import into a standard TiddlyWiki you would need to do the
following:
Import FamilyTreePlugin and VismoLibraryPlugin from this TiddlyWiki

You can then use the macro <<FamilyTree>> this should create a tree
with dimensions the size of the dom element that contains it.

The only conventions you would need for the family tree to work is to
make sure each tiddler has a field "mother" and "father" where each of
these is a tiddler title.
Please look at my EditTemplate if you need to.

Great that someone else cares about this apart from me :) :) :)

Tobbe

unread,
Oct 6, 2009, 12:44:18 PM10/6/09
to TiddlyWiki
Hi again,

Now I have imported your plugins and it almost works :)
I get an macro error under mother and father that says:
Error in macro <<aet>>
1. Error while executing macro <<aet>>:
2. TypeError: tiddlerobj is null

How do I fix that? I checked around but I couldn't found any aet macro

One feature I wanna have implant is that every person gets a reference
number like P-000001 (P=person), new person get P-000002 and son.
Would that be hard to fix?

//Tobbe

Tobias

unread,
Oct 6, 2009, 5:39:31 PM10/6/09
to TiddlyWiki
Hi Jon,

I think trees in general are quite useful and, even though I am not
into genealogoy, this is as much an interesting concept as a fresh
design. If not too fesh ;-)

I think you're very skilled with all tw. So, here's what I think might
provide further benefits:

* give the tree a lot more realestate, the logo (title) does not need
it
* hide the sidebar initially, you don't need tha either
* put the search next to your root-dropdown-select, so that it's
available even if the sidebar is not
* in addition to (or instead of) yoursearch, use a selectbox similar
to the one you used for nicer tagging and have it look for the names
of people ...that could even replace the selectbox entirely
* when a root is selected the corresponding article should open, I
think
* instead of just nodes and connectors, also display initials for each
person, if possible
* consider using a hyperbolic tree
* instead of the big size, I think the buttons were more functional
with icons (or colours corresponding to their function... you know:
father blue, mother red, child and spouse already split into red and
blue, etc...
* if that's possible at all, a time-scaled tree and a scale on its
side
* that's it for now ;-)

Tobias.

jdlrobson

unread,
Oct 6, 2009, 6:03:09 PM10/6/09
to TiddlyWiki
Tobbe - the aet macro is provided in the AdvancedTemplatePlugin and is
being used by the ViewTemplate. If you want to make use of my
ViewTemplate you'll need to add this plugin, otherwise feel free to
refactor using your own version of the view template.

In terms of the reference numbers for each person could I ask your
motivation? Would this be a separate field or would it replace tiddler
title? Either way you would need to override the new tiddler function
to prepopulate the tiddler. We would then have to think about making
any changes to the family tree plugin to accommodate this change.

Tobias: cheers for all that wonderful feedback. I will certainly
follow your advice for the next release. In terms of hyperbolic tree
this is on my radar. My intention is to make a graph plugin which can
switch between different layout algorithms. Layout algorithms do my
head in unfortunately so my progress in this area is likely to be
slower ;-). The family tree layout is made by a function that takes
the graph as the function and works on it to add position properties
to every node. The renderer then just prints nodes based on these
values. So put simply I just have to create a function that takes a
graph and gives each node a hyperbolic graph position. Then it's just
a case of plugging that into the existing code. If there are any graph
algorithm geeks out there please make yourself known. I'd love if
people were interested in implementing algorithms for different layout
algorithms themselves and would be very happy to help people with
this.

Tobbe

unread,
Oct 7, 2009, 1:43:38 AM10/7/09
to TiddlyWiki
Hi Jon,

It was an idea if it was easy to add a reference # (as a feature) and
yes it would have it's own field, say to the right of the tiddler
title field. But if it is hard to fix then we can leave alone and I
can come up with another reference type, maybe someting in the tag
area.

I look into your ViewTemplate also. I'll get back when I have tried it
a little bit more.

Thanks again Jon, I'm waiting for your next release :)

jdlrobson

unread,
Oct 7, 2009, 5:59:07 AM10/7/09
to TiddlyWiki
Would this reference number be used as a title? If not what is the
purpose of it? Couldn't the name work as a reference?

Tobbe

unread,
Oct 7, 2009, 6:56:56 AM10/7/09
to TiddlyWiki
Hmm,

You can't have 2 tiddlers with the same name (James Jones) but if you
have a reference number and make that number the tiddler name you can
have several people with the same name. In Sweden back in the old days
sons get there fathers firstname as lastname like this:

Jan Andersson
> son of Jan is Johan Jansson (sson after Jan)
>> son of Johan is Anders Johan-sson
>>> son of Anders is Jan Ander-sson (again, same name) just an example and it could even be that Jan Anderssons son gets the name Jan Andersson also. They weren't so keen on different names back in 1700 :)

If a tiddler could use the reference # as the tiddler field in seqence
of +1 and we could add a new field with the persons name, it would be
great, than we can have how many Mary Jones or Anders Andersson as we
will.

Hope you understand what I mean. It's not that important if you think
it's a "little" overkill :)

//Tobbe

jdlrobson

unread,
Oct 7, 2009, 8:15:41 AM10/7/09
to TiddlyWiki
Hi Tobbe
Totally share your view that there is a problem here, but I don't
think this is the answer.
I for one have lots of John Robson's in my family tree.
However the big reason I've done it this way is because most
TiddlyWiki plugins work that way and I didn't want to limit the
potential of the app by doing something different. In TiddlyWiki world
the tiddler title is like an ID (since you can't have two tiddlers
with the same name).

One thing we could do though is place a reference id as you create
tiddlers as part of the tiddler title. So when I create a tiddler John
Robson it might be made as John Robson (23). Then in the ViewTemplate
you are free to print 23 as a reference number and see John Robson or
the title, or just use John Robson (23). I'll think a bit more about
this..

One thing that we *could* however do

Tobbe

unread,
Oct 7, 2009, 9:48:16 AM10/7/09
to TiddlyWiki
Hi,

Ok, I see what you mean. But don't give this more job than you can
manage. Like I said before, I can use the tag feature instead. But if
it is easy what you have in mind, please go ahead and do so, I for one
gonna be happy :). I'm not good at all in scripting/coding/programming
so I can't help you there.

One question that pops up is, how do I now which number I put in the
tiddler. If John Robson (10) is already used...hmm. Well, no big deal
maybe.

//Tobbe

Jel

unread,
Oct 8, 2009, 7:58:39 AM10/8/09
to TiddlyWiki
Good man! I'm using TW for historical research (somewhere in between
Indiana Jones and Robert Langdon, with the exception that these are
real academics working on the real history of science and we've found
something seriously hard in the fifteenth century) which is bedevilled
by the impossibility to link to the genealogies of European nobility
who were driving the thing. Either TW overloads with genealogical
data, or I can't see who's linked to who. One essential add-on will be
a gedcom interface, as I see you are using gedcom-ish tables
underneath, I think preferably the old data-defined structure rather
than the new XML one, although you'll need to be thinking of going in
that direction with the TW development plan. An interim cludge will be
to find a way of working with Yann Perrin's inline slicer.
As your application's fairly hard-wired, I think I'll be using it as a
background reference from my main TW file.

Tobias

unread,
Oct 8, 2009, 5:39:20 PM10/8/09
to TiddlyWiki
Sounds promising,

I hope the graph algorithmic geeks wont play hide and seek ;-)

Ever tried to put a hands on hypergraph?
http://dahukanna.net/wiki/tiddlywiki.htm

Not that I'd know, but I guess with your level of experience you're
not that far away from reviving something that never seems to have
gotten far enough, considering the potential I tend to ascribe to it.

Tobias.

Robert Pollard

unread,
Oct 9, 2009, 12:18:19 PM10/9/09
to tiddl...@googlegroups.com
Jon

I am delighted to hear about your family tree tw, especially since I have
my family tree information in a DataPerfect database, from which I am able
to generate tiddlers with most of the fields you use.

However, I am not clear about how to incorporate multiple marriages and would
welcome information on how to do this

Robert
--
Robert Pollard
Information Habitat: Where Information Lives
http://habitat.igc.org/
ecolo...@gmail.com
1.212.864.3156
http://friendfeed.com/climatechange3

pat toche

unread,
Oct 9, 2009, 1:30:09 PM10/9/09
to TiddlyWiki
Thanks a lot for this contribution Jon. Some time ago* I was looking
for ways to design a vertical family tree. I'm very excited about your
plugins.

Questions:

1. how to get started?

2. would you list the necessary plugins for us?

I mean the minimum number of plugins needed for a minimal tree (yes, I
have downloaded the template http://www.jonrobson.me.uk/development/familytree/index.html)

3. And how do you actually visualize the trees?

At present I just see a list of individuals and a form to enter the
relevant data (very nice, I was looking for just that), but is there a
display of the tree? (yes, I have clicked on "About", but the
"Instructions" are too minimal for me, and btw the link to your family
tree there doesn't work -- I was able to visit it through the link you
gave at the top of this thread) Fiddling with your template I'll
probably figure it out sooner or later, but I thought I should mention
here that a brief explanation would be very useful under the
"Instructions".

Patrick.

* Some useful info was exchanged there recently:

http://groups.google.com/group/tiddlywiki/browse_thread/thread/ae27dbd756c135fe/db84b6899aed7f8c?lnk=gst&q=toche#db84b6899aed7f8c

Måns

unread,
Oct 10, 2009, 2:52:12 AM10/10/09
to TiddlyWiki
Hi Jon

Thank you for yet another great and very usefull TWadaption.
You set high standards for innovation and give us a glimpse of future
development when you present a new TW - I loose my breath when looking
through your AdvancedEditTemplatePlugin ... wauw - it's a long one ...


As usual I'm trying to translate your stuff into Danish.
I figured myself howto translate the <<new person>> in the
FamilyTreePluginTiddler - but I'm a little lost with allmost all other
parameters.
Where do I start and how many places should I change to translate..?
Male Female M F should be Mand Kvinde M K for example. Is it enough to
change that in the "sexDefinitiontiddler"?
Spouse, Sibling, Mom and Dad - Where and how many places should I
change to translate these? I recon the viewtemplate is one of them...

Great job.
Thanks for sharing.

YS Måns Mårtensson

Måns

unread,
Oct 10, 2009, 3:38:51 AM10/10/09
to TiddlyWiki
However - two things are a little annoying (in Google Chrome).
If you want to refresh display and there are unsaved changes - you are
asked if you want to leave the page. If you choose not to - it
refreshes the page anyway and you loose the changes.
There's no status for saving - no popup when you click save changes
(again Google Chrome) - so you are taking a chance everytime you
refresh the page - You don't know if you *have* saved changes - and
because of the first problem - you loose the changes anyway...- How do
I change it back to a more normal behaviour?

YS Måns Mårtensson
Reply all
Reply to author
Forward
0 new messages