Family Graph - plain graph to display one family (f.e. grandparents to grandchildren)

Happy New Year and big thanks for this brilliant customizable program.

I realized there is no simple and clear display for just one family available in Gramps. Some genealogic programs on the other hand provide this.

The excellent GraphView plugin comes close to this feature if the number of generations is reduced. Still it gives a rather confusing overview due to the number of spouses inserted between the direct family members:

(sorry, would have liked to add a link here for the regular GraphView of a family with 4 generations but I’m not allowed to)

And in this case only half of the 10 children have spouses. Just imagine how it would look if there are thirteen children with spouses in a line that makes up to 26 persons.

So I had the idea to meddle a little with the graphview.py and just removed the command

self.add_spouses(person, family, person_handles)

in def add_descendant(self, person, num_generations, person_handles)

and got rid of the spouses in the descendant generations. The downside was that my active person also lost the spouse. It looks like this:

GraphView without spouses in the descendant generations

  1. question: Is there any way to get the beloved spouse of my active person back?

  2. question: Would it be possible to provide a completely new graph that displays 3 or 4 generations of just one family?

I’ve seen this done for the four grandparents in one line on top (optional), the active family in one line below, their children in the lowest line. And then the spouses of the children generation are put beneath the connected child person (not beside) and their kids are displayed in columns from top to bottom. In this way it is possible to make best use of the existing space and getting a very clear overview over the direct family members. Look at this for example:

Just being curious…

1 Like

Another option would be if the Charts view graphed only the records found by the Filter Gramplet.

Since a lot of the graphs are a bit coarse, my workaround has been to set up a filter and export a GEDCOM to be mapped using yEd. That package is all about tweaking graphs.

see the following discussion

The relationship graph (in reports) will graph whatever you want. But you have to set up a filter to exactly what you want. The Graph generated is very similar to the Graphview in appearance, (in fact it uses the same underlying code).

The filter is something like starting with you, add ancestors (one generation), plus descendants (two generations) being careful to exclude spouses and maybe adding your wife as an extra.

Thank you for your response. Obviously I didn’t manage to make myself clear. Although I quite like creating reports, I would consider creating a report with filtered contents each time I am browsing families as rather clumsy.

My last image (above) taken from another genealogic program shows not a report but an interactive chart in which you can select any member of the displayed family to switch to this person’s individual family and enable a smooth browsing through families. I think this is smart and also allows a non-confusing overview of even really big families.

I thought something like this could also be done as a plugin for Gramps and would as such improve the functionality and comfort of the program.

The included graph in Gramps is great for displaying the parental familytree but doesn’t give any information about the siblings in a family. The plugin GraphView is excellent for tracking bloodlines and is already a real treat for showing siblings. The only issue in the GraphView is that the connected spouses are tearing up the line of the siblings which makes it very confusing with a family with f.e. 13 children.

Actually it was other researches who sent me on the mission to ask you for a better family graph display. And they are dealing with families with much higher numbers of members in families than I got in my own database. Additionally for them filtering doesn’t work well because of the patronymic names f.e. in Scandinavia (no reliably identifying family names).

I made them already happy with my laymen’s action of removing the spouses in GraphView (with the sideeffect of the active person loosing the spouse as well). Can’t imagine that my doing can cause damage to the database, can it?

Here is the screenshot that I wanted to upload first, showing the family in the hardly readable default GraphView display in which case even only 50 % of the siblings have spouses.

Sorry for writing so much.

1 Like

I’m not a python developer, but I think you should somehow be able to make that “self.add_spouses …” statement subject to an “if” statement in which you check whether the person being processed at that point is the “active” person. Sorry I can’t be more specific (else I would try it myself before suggesting it). Good luck!

Thank you and nothing to be sorry about. I had exactly the same idea already to add the spouse to active_person but I didn’t succeed because my knowledge of pyhton and especially the meaning of the parameters is not sufficient at all.

Anyway, we can live with my little tweak for now. One just needs to click on one of the children to make it the active person to get both parents shown in the ancestor generation. Not optimal but in my opinion an improved visual display of families with pictures and illustrations instead of only having written reports with names lined up in lists and tables without the “real person feeling”.

As noted by prculley, the relationship graph used with the person filter is very powerful. It can include siblings, and filters can be set on relationships in Gramps (so the filter is independent of patronymic names).
Sometimes, it is necessary to use 2 filters. An approach that I find useful is:
filter 1: all descendants of selected ancestor
filter 2: everyone in filter 1 + spouses of everyone in filter 1

You might also like to look at
https://gramps-project.org/wiki/index.php?title=Example_filters
Example 7: All people related to me but not my wife

see in particular Filter C and comment 3

I really appreciate your suggestions but as I pointed out before we do not want to create reports based on filters and thus additional external files.

We would wish for an in-program graph, simply displaying the family of the active person (optional - grandparents, parents, children, optional - grandchildren), approximately as it is done in image 3 of my first post.

Otherwise GraphView comes already close when the ancestor generation is set to 2. Downside is that the array of children (the descendant generation) looks very confusing in big families due to the inserted spouses which totally breaks the sibling line. It would be great for the synopsis to display the siblings side by side without spouses.

So actually everything is there already in GraphView, except to add the one option to remove spouses from the descendant generations. And this should be accomplished without loosing the spouse of the active person. I don’t know how hard this would be to achieve but wouldn’t it be challenging?

I like the idea of putting the grandchildren beneath instead of beside, but how does it work for for families where children have multiple partners?

Just for the record, you are talking about the family graph shown in image 3, first post, taken from another program.

With two different partners it looks like this: The person in the horizontal line of children is on top and the first spouse of this person below, connected with a line on the side. Then below the spouse follows the chain of their offsprings connected with direct lines from box to box. For the second spouse the line on the side is extended reaching down beyond the block of the children with the first spouse. Finally below the second spouse there is the chain of children deriving from the second relation. See here:


Family Graph Example 2

3 Likes