Addon:DescendantSpaceTree

From Gramps
Gramps-notes.png
This is a Third-party Addon. The Addon/Plugin system is controlled by the Plugin Manager.

Please use carefully on data that is backed up, and help make it better by reporting any issues to the bug tracker.
Unless otherwise stated on this page, you can download this addon by following these instructions.
Please note that some Addons have prerequisites that need to be installed before they can be used.

DescendantSpaceTree Web Page example output

The Descendant Space Tree addon creates an graphical space efficient display with interactive navigation on a web page, even with large families.

Features
  • Space Tree representation allows users to focus on descendant lines back to the starting ancestor.
  • Clicking on a person node expands immediate descendants and updates basic information about that person (parents, descendant count, spouses, dates).
  • A search box to find a descendant or spouse by any part of a name, clicking on a search result immediately focuses on that person.
  • Click-hold-drag anywhere on the canvas will reposition the tree.
  • A reset button to reposition the graph back to the starting person and position.
  • A help button to display usage.
  • Branch pruning in the case of inter-family marriages, with navigation to alternate branch.
  • The web page is created as a single HTML file with no external dependencies.

Usage

The Descendant Space Tree report is available from the menu Reports > Web Pages > Descendant Space Tree... choose your Center Person and select OK to create the report.


Report Options
DescendantSpaceTree - Web Pages - Addon - "DescendantSpaceTree Options" defaults

On the Report Options tab:

  • Center Person: defaults to the active person.
    • Select a different person selector button
  • Include Generations: 20 (default) - The number of generations to include in the tree.
  • Branch to expand when duplicated: In case of inter-family marriages, select the line to expand further descendants from the common ancestor:
    • Patriarchal Line (Male ancestor) (default) - choose the branch that contains the common ancestor who is male to expand.
    • Matriarchal Line - choose the branch that contains the common ancestor who is female to expand.
  • Maximum display birth year: 1900 (default) - Limits the display of dates for persons born after this year.
  • Theme preference: Generate the web page Space Tree graph canvas with a specific theme:
    • Dark theme (default) - use dark background for graph canvas.
    • Light theme - use a light background for graph canvas.
  • Destination: defaults to the user home directory. The destination directory for the generated HTML file.
    • The destination path for generated files button
  • Destination File: DescendantSpaceTree.html (default) The destination HTML file name.
  • Open with default viewer - Opens the generated web page with user's default web browser.


Web page usage

Descendant Space Tree Web Page example output - showing search and both the reset and help buttons
DescendantSpaceTree Web Page Help popup

The generated HTML file DescendantSpaceTree.html can be published to a web server, or simply opened locally with a web browser or file explorer (Edge, Chrome, Safari, Firefox, Opera, etc.)

The person chosen as the Center Person: option will be displayed in yellow, and immediate descendants are expanded. Basic information about the selected person is shown on the left.

Depending on the Maximum display birth year: option, dates may be excluded from the basic information.

Clicking on any of the displayed person nodes will change focus, and close any other currently open branch. The immediate descendants of the focused person will be colored to indicate the number of immediate descendants. The deeper the hue of coloring indicates a greater number of immediate descendants.

The entire graph within the canvas can be re-positioned by clicking and holding on the canvas, followed by dragging.

A 🔍 Search box in the top right side of the window can be used to quickly focus on a person, including any persons not currently displayed. Any part of a name can be searched, as well as the Gramps Database ID. At least three characters are required before the search displays results. The list of search results can be scrolled with a mouse wheel or touch pad, or up and down arrow keys. Click on a person in the search to focus immediately on that person, or press the Escape key to cancel the search. Persons found in the search that include a plus sign + indicate that person is a spouse of a descendant.

Selecting the ⟳ Reset button displays the graph focused back on the original starting person and graph position.

The descendant graph is reset to the starting person whenever the browser window is resized. Resizing or toggling full screen F5 before navigating the descendant tree to is recommended.

The ? Help button will display usage for the viewer. Click either the X - Close button or press the Escape key to close the help window.

Duplicate branches from inter-family marriages

In the case of an inter-family marriages (i.e., such of that of a marriage of cousins), there would otherwise be two branches of descendants. DescendantSpaceTree only expands the descendants from such families in one branch, while the other branch is pruned. The choice is made by the setting of the Branch to expand when duplicated: option. During report generation, the common ancestor of the two parents is found. The branch that contains the selected line (Patriarchal or Matriarchal) will be further expanded.

An extra button will be displayed in these cases in the bottom left of the window. When the branch is that of the selected line, the button will navigate to the same person in the alternate branch. The pruned branch will display immediate descendants in blue, indicating that they can be expanded in the primary branch. Likewise, if navigating to a descendant via the pruned branch, a button will allow navigation back to the expanded branch.

See also


Issues

If you have trouble displaying the report on your local computer see the following: