Drawing family tree with `genealogytree`












4














I'm trying to create a version of the image below using the genealogytree package:



I've got most of the way there except for the fact that the "brother" and one of the "cousin" boxes overlap:



Here's my MWE that produced the image above:



documentclass[a4paper,landscape]{article}
usepackage[top=4.5cm, bottom=4.5cm, left=1cm, right=1cm]{geometry}
usepackage[all]{genealogytree}
begin{document}
resizebox{textwidth}{!}{
begin{tikzpicture}
genealogytree[template=signpost, id suffix=@p]
{
child{
g[male]{paternal grandfather}
p[female]{paternal grandmother}
child{
g[male]{paternal uncle}
c[male]{cousin}
child{
g[female]{cousin}
}
}
child{
g[female]{paternal aunt}
c[male]{cousin}
child{
g[female]{cousin}
}
}
child[phantom*]{
g[male,id=father]{father}
p[female]{mother}
c[male]{brother}
c{textsc{ego}}
c[female]{sister}
}
}
}
genealogytree[template=signpost, id suffix=@m, set position=father@m at father@p]
{
child{
g[male]{maternal grandfather}
p[female]{maternal grandmother}
child{
p[male,id=father]{father}
g[female]{mother}
child{
g[male]{brother}
c[male]{nephew}
child{
g[female]{niece}
}
}
child{
g{textsc{ego}}
c[male]{son}
child{
g[female]{daughter}
}
}
child{
g[female]{sister}
c[male]{nephew}
child{
g[female]{niece}
}
}
}
child{
g[male]{maternal uncle}
c[male]{cousin}
c[female]{cousin}
}
child{
g[female]{maternal aunt}
c[male]{cousin}
c[female]{cousin}
}
}
}
end{tikzpicture}
}
end{document}


Help finding a solution would be welcome!










share|improve this question





























    4














    I'm trying to create a version of the image below using the genealogytree package:



    I've got most of the way there except for the fact that the "brother" and one of the "cousin" boxes overlap:



    Here's my MWE that produced the image above:



    documentclass[a4paper,landscape]{article}
    usepackage[top=4.5cm, bottom=4.5cm, left=1cm, right=1cm]{geometry}
    usepackage[all]{genealogytree}
    begin{document}
    resizebox{textwidth}{!}{
    begin{tikzpicture}
    genealogytree[template=signpost, id suffix=@p]
    {
    child{
    g[male]{paternal grandfather}
    p[female]{paternal grandmother}
    child{
    g[male]{paternal uncle}
    c[male]{cousin}
    child{
    g[female]{cousin}
    }
    }
    child{
    g[female]{paternal aunt}
    c[male]{cousin}
    child{
    g[female]{cousin}
    }
    }
    child[phantom*]{
    g[male,id=father]{father}
    p[female]{mother}
    c[male]{brother}
    c{textsc{ego}}
    c[female]{sister}
    }
    }
    }
    genealogytree[template=signpost, id suffix=@m, set position=father@m at father@p]
    {
    child{
    g[male]{maternal grandfather}
    p[female]{maternal grandmother}
    child{
    p[male,id=father]{father}
    g[female]{mother}
    child{
    g[male]{brother}
    c[male]{nephew}
    child{
    g[female]{niece}
    }
    }
    child{
    g{textsc{ego}}
    c[male]{son}
    child{
    g[female]{daughter}
    }
    }
    child{
    g[female]{sister}
    c[male]{nephew}
    child{
    g[female]{niece}
    }
    }
    }
    child{
    g[male]{maternal uncle}
    c[male]{cousin}
    c[female]{cousin}
    }
    child{
    g[female]{maternal aunt}
    c[male]{cousin}
    c[female]{cousin}
    }
    }
    }
    end{tikzpicture}
    }
    end{document}


    Help finding a solution would be welcome!










    share|improve this question



























      4












      4








      4


      1





      I'm trying to create a version of the image below using the genealogytree package:



      I've got most of the way there except for the fact that the "brother" and one of the "cousin" boxes overlap:



      Here's my MWE that produced the image above:



      documentclass[a4paper,landscape]{article}
      usepackage[top=4.5cm, bottom=4.5cm, left=1cm, right=1cm]{geometry}
      usepackage[all]{genealogytree}
      begin{document}
      resizebox{textwidth}{!}{
      begin{tikzpicture}
      genealogytree[template=signpost, id suffix=@p]
      {
      child{
      g[male]{paternal grandfather}
      p[female]{paternal grandmother}
      child{
      g[male]{paternal uncle}
      c[male]{cousin}
      child{
      g[female]{cousin}
      }
      }
      child{
      g[female]{paternal aunt}
      c[male]{cousin}
      child{
      g[female]{cousin}
      }
      }
      child[phantom*]{
      g[male,id=father]{father}
      p[female]{mother}
      c[male]{brother}
      c{textsc{ego}}
      c[female]{sister}
      }
      }
      }
      genealogytree[template=signpost, id suffix=@m, set position=father@m at father@p]
      {
      child{
      g[male]{maternal grandfather}
      p[female]{maternal grandmother}
      child{
      p[male,id=father]{father}
      g[female]{mother}
      child{
      g[male]{brother}
      c[male]{nephew}
      child{
      g[female]{niece}
      }
      }
      child{
      g{textsc{ego}}
      c[male]{son}
      child{
      g[female]{daughter}
      }
      }
      child{
      g[female]{sister}
      c[male]{nephew}
      child{
      g[female]{niece}
      }
      }
      }
      child{
      g[male]{maternal uncle}
      c[male]{cousin}
      c[female]{cousin}
      }
      child{
      g[female]{maternal aunt}
      c[male]{cousin}
      c[female]{cousin}
      }
      }
      }
      end{tikzpicture}
      }
      end{document}


      Help finding a solution would be welcome!










      share|improve this question















      I'm trying to create a version of the image below using the genealogytree package:



      I've got most of the way there except for the fact that the "brother" and one of the "cousin" boxes overlap:



      Here's my MWE that produced the image above:



      documentclass[a4paper,landscape]{article}
      usepackage[top=4.5cm, bottom=4.5cm, left=1cm, right=1cm]{geometry}
      usepackage[all]{genealogytree}
      begin{document}
      resizebox{textwidth}{!}{
      begin{tikzpicture}
      genealogytree[template=signpost, id suffix=@p]
      {
      child{
      g[male]{paternal grandfather}
      p[female]{paternal grandmother}
      child{
      g[male]{paternal uncle}
      c[male]{cousin}
      child{
      g[female]{cousin}
      }
      }
      child{
      g[female]{paternal aunt}
      c[male]{cousin}
      child{
      g[female]{cousin}
      }
      }
      child[phantom*]{
      g[male,id=father]{father}
      p[female]{mother}
      c[male]{brother}
      c{textsc{ego}}
      c[female]{sister}
      }
      }
      }
      genealogytree[template=signpost, id suffix=@m, set position=father@m at father@p]
      {
      child{
      g[male]{maternal grandfather}
      p[female]{maternal grandmother}
      child{
      p[male,id=father]{father}
      g[female]{mother}
      child{
      g[male]{brother}
      c[male]{nephew}
      child{
      g[female]{niece}
      }
      }
      child{
      g{textsc{ego}}
      c[male]{son}
      child{
      g[female]{daughter}
      }
      }
      child{
      g[female]{sister}
      c[male]{nephew}
      child{
      g[female]{niece}
      }
      }
      }
      child{
      g[male]{maternal uncle}
      c[male]{cousin}
      c[female]{cousin}
      }
      child{
      g[female]{maternal aunt}
      c[male]{cousin}
      c[female]{cousin}
      }
      }
      }
      end{tikzpicture}
      }
      end{document}


      Help finding a solution would be welcome!







      tikz-pgf tikz-trees genealogytree genealogy






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Dec 16 at 17:36









      Alan Munn

      158k27425698




      158k27425698










      asked Dec 16 at 16:35









      Miztli

      2201313




      2201313






















          2 Answers
          2






          active

          oldest

          votes


















          5














          It is true that you can manually shift the paternal tree...but the problem you are facing is solved in another way.



          The issue is that in the paternal tree, you have termination at only the brother, ego, and sister nodes. But in the maternal tree, you have son, daughter, and niece/nephew nodes terminating. These lower-level nodes force more separation space between brother, ego, and sister -- this space is not required in the paternal tree, because those lower-level nodes don't exist.



          All you need to do is mirror the entire child nodes structure from father and mother downward, like such:



          EDIT:



          The structure requires a very small tweak when you copy and paste. The first image shows what happens when you do not make the tweak. You'll need to flip the g and p in the father and mother nodes within the paternal tree.



          documentclass[a4paper,landscape]{article}
          usepackage[top=4.5cm, bottom=4.5cm, left=1cm, right=1cm]{geometry}
          usepackage[all]{genealogytree}
          begin{document}
          resizebox{textwidth}{!}{
          begin{tikzpicture}
          genealogytree[template=signpost, id suffix=@p]
          {
          child{
          g[male]{paternal grandfather}
          p[female]{paternal grandmother}
          child{
          g[male]{paternal uncle}
          c[male]{cousin}
          child{
          g[female]{cousin}
          }
          }
          child{
          g[female]{paternal aunt}
          c[male]{cousin}
          child{
          g[female]{cousin}
          }
          }
          %OLD WAY
          %child[phantom*]{
          %g[male,id=father]{father}
          %p[female]{mother}
          %c[male]{brother}
          %c{textsc{ego}}
          %c[female]{sister}
          %}
          %MIRRORED FROM MATERNAL TREE (SEE FIRST IMAGE)
          %child[phantom*]{
          %p[male,id=father]{father}
          %g[female]{mother}
          %child{
          %g[male]{brother}
          %c[male]{nephew}
          %child{
          %g[female]{niece}
          %}
          %}
          %child{
          %g{textsc{ego}}
          %c[male]{son}
          %child{
          %g[female]{daughter}
          %}
          %}
          %child{
          %g[female]{sister}
          %c[male]{nephew}
          %child{
          %g[female]{niece}
          %}
          %}
          %}
          %}
          %MIRRORED FROM MATERNAL TREE WITH THE TWEAK (SEE SECOND IMAGE)
          child[phantom*]{
          g[male,id=father]{father}
          p[female]{mother}
          child{
          g[male]{brother}
          c[male]{nephew}
          child{
          g[female]{niece}
          }
          }
          child{
          g{textsc{ego}}
          c[male]{son}
          child{
          g[female]{daughter}
          }
          }
          child{
          g[female]{sister}
          c[male]{nephew}
          child{
          g[female]{niece}
          }
          }
          }
          }
          }
          genealogytree[template=signpost, id suffix=@m, set position=father@m at father@p]
          {
          child{
          g[male]{maternal grandfather}
          p[female]{maternal grandmother}
          child{
          p[male,id=father]{father}
          g[female]{mother}
          child{
          g[male]{brother}
          c[male]{nephew}
          child{
          g[female]{niece}
          }
          }
          child{
          g{textsc{ego}}
          c[male]{son}
          child{
          g[female]{daughter}
          }
          }
          child{
          g[female]{sister}
          c[male]{nephew}
          child{
          g[female]{niece}
          }
          }
          }
          child{
          g[male]{maternal uncle}
          c[male]{cousin}
          c[female]{cousin}
          }
          child{
          g[female]{maternal aunt}
          c[male]{cousin}
          c[female]{cousin}
          }
          }
          }

          end{tikzpicture}
          }
          end{document}


          (without the tweak - a pure copy-and-paste):



          Proper merge of paternal and maternal trees in genealogytree without tweak



          (copy-and-paste plus switching g and p on father and mother nodes):



          Proper merge of paternal and maternal trees in genealogytree with tweak



          I think this way is preferable because of the automatic spacing. The manual shift method should be reserved for what the genealogytree manual on page 44 refers to (which I think does not apply here):




          Note that in a more complicated situation more manual intervention may
          be necessary to avoid unwanted overlapping of other nodes.







          share|improve this answer



















          • 2




            Something missing: the paternal relatives are connected with the mother, instead of the father
            – CarLaTeX
            Dec 16 at 17:32










          • @CarLaTeX Ah, good catch! There's a very small tweak that fixes the copy-and-paste approach. I'll update it now.
            – whatisit
            Dec 16 at 17:39






          • 2




            Perfect now, +1!
            – CarLaTeX
            Dec 16 at 17:50



















          4














          You could use tikz={xshift=...} to shift the paternal relatives.



          documentclass[a4paper,landscape]{article}
          usepackage[top=4.5cm, bottom=4.5cm, left=1cm, right=1cm]{geometry}
          usepackage[all]{genealogytree}
          begin{document}
          resizebox{textwidth}{!}{
          begin{tikzpicture}
          genealogytree[template=signpost, id suffix=@p]
          {
          child{
          g[male]{paternal grandfather}
          p[female]{paternal grandmother}
          child{
          g[male,tikz={xshift=-2.3cm}]{paternal uncle}
          c[male,tikz={xshift=-2.3cm}]{cousin}
          child{
          g[female,tikz={xshift=-2.3cm}]{cousin}
          }
          }
          child{
          g[female,tikz={xshift=-2.3cm}]{paternal aunt}
          c[male,tikz={xshift=-2.3cm}]{cousin}
          child{
          g[female,tikz={xshift=-2.3cm}]{cousin}
          }
          }
          child[phantom*]{
          g[male,id=father]{father}
          p[female]{mother}
          c[male]{brother}
          c{textsc{ego}}
          c[female]{sister}
          }
          }
          }
          genealogytree[template=signpost, id suffix=@m, set position=father@m at father@p]
          {
          child{
          g[male]{maternal grandfather}
          p[female]{maternal grandmother}
          child{
          p[male,id=father]{father}
          g[female]{mother}
          child{
          g[male]{brother}
          c[male]{nephew}
          child{
          g[female]{niece}
          }
          }
          child{
          g{textsc{ego}}
          c[male]{son}
          child{
          g[female]{daughter}
          }
          }
          child{
          g[female]{sister}
          c[male]{nephew}
          child{
          g[female]{niece}
          }
          }
          }
          child{
          g[male]{maternal uncle}
          c[male]{cousin}
          c[female]{cousin}
          }
          child{
          g[female]{maternal aunt}
          c[male]{cousin}
          c[female]{cousin}
          }
          }
          }
          end{tikzpicture}
          }
          end{document}


          enter image description here






          share|improve this answer





















            Your Answer








            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "85"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: false,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: null,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f466104%2fdrawing-family-tree-with-genealogytree%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            2 Answers
            2






            active

            oldest

            votes








            2 Answers
            2






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            5














            It is true that you can manually shift the paternal tree...but the problem you are facing is solved in another way.



            The issue is that in the paternal tree, you have termination at only the brother, ego, and sister nodes. But in the maternal tree, you have son, daughter, and niece/nephew nodes terminating. These lower-level nodes force more separation space between brother, ego, and sister -- this space is not required in the paternal tree, because those lower-level nodes don't exist.



            All you need to do is mirror the entire child nodes structure from father and mother downward, like such:



            EDIT:



            The structure requires a very small tweak when you copy and paste. The first image shows what happens when you do not make the tweak. You'll need to flip the g and p in the father and mother nodes within the paternal tree.



            documentclass[a4paper,landscape]{article}
            usepackage[top=4.5cm, bottom=4.5cm, left=1cm, right=1cm]{geometry}
            usepackage[all]{genealogytree}
            begin{document}
            resizebox{textwidth}{!}{
            begin{tikzpicture}
            genealogytree[template=signpost, id suffix=@p]
            {
            child{
            g[male]{paternal grandfather}
            p[female]{paternal grandmother}
            child{
            g[male]{paternal uncle}
            c[male]{cousin}
            child{
            g[female]{cousin}
            }
            }
            child{
            g[female]{paternal aunt}
            c[male]{cousin}
            child{
            g[female]{cousin}
            }
            }
            %OLD WAY
            %child[phantom*]{
            %g[male,id=father]{father}
            %p[female]{mother}
            %c[male]{brother}
            %c{textsc{ego}}
            %c[female]{sister}
            %}
            %MIRRORED FROM MATERNAL TREE (SEE FIRST IMAGE)
            %child[phantom*]{
            %p[male,id=father]{father}
            %g[female]{mother}
            %child{
            %g[male]{brother}
            %c[male]{nephew}
            %child{
            %g[female]{niece}
            %}
            %}
            %child{
            %g{textsc{ego}}
            %c[male]{son}
            %child{
            %g[female]{daughter}
            %}
            %}
            %child{
            %g[female]{sister}
            %c[male]{nephew}
            %child{
            %g[female]{niece}
            %}
            %}
            %}
            %}
            %MIRRORED FROM MATERNAL TREE WITH THE TWEAK (SEE SECOND IMAGE)
            child[phantom*]{
            g[male,id=father]{father}
            p[female]{mother}
            child{
            g[male]{brother}
            c[male]{nephew}
            child{
            g[female]{niece}
            }
            }
            child{
            g{textsc{ego}}
            c[male]{son}
            child{
            g[female]{daughter}
            }
            }
            child{
            g[female]{sister}
            c[male]{nephew}
            child{
            g[female]{niece}
            }
            }
            }
            }
            }
            genealogytree[template=signpost, id suffix=@m, set position=father@m at father@p]
            {
            child{
            g[male]{maternal grandfather}
            p[female]{maternal grandmother}
            child{
            p[male,id=father]{father}
            g[female]{mother}
            child{
            g[male]{brother}
            c[male]{nephew}
            child{
            g[female]{niece}
            }
            }
            child{
            g{textsc{ego}}
            c[male]{son}
            child{
            g[female]{daughter}
            }
            }
            child{
            g[female]{sister}
            c[male]{nephew}
            child{
            g[female]{niece}
            }
            }
            }
            child{
            g[male]{maternal uncle}
            c[male]{cousin}
            c[female]{cousin}
            }
            child{
            g[female]{maternal aunt}
            c[male]{cousin}
            c[female]{cousin}
            }
            }
            }

            end{tikzpicture}
            }
            end{document}


            (without the tweak - a pure copy-and-paste):



            Proper merge of paternal and maternal trees in genealogytree without tweak



            (copy-and-paste plus switching g and p on father and mother nodes):



            Proper merge of paternal and maternal trees in genealogytree with tweak



            I think this way is preferable because of the automatic spacing. The manual shift method should be reserved for what the genealogytree manual on page 44 refers to (which I think does not apply here):




            Note that in a more complicated situation more manual intervention may
            be necessary to avoid unwanted overlapping of other nodes.







            share|improve this answer



















            • 2




              Something missing: the paternal relatives are connected with the mother, instead of the father
              – CarLaTeX
              Dec 16 at 17:32










            • @CarLaTeX Ah, good catch! There's a very small tweak that fixes the copy-and-paste approach. I'll update it now.
              – whatisit
              Dec 16 at 17:39






            • 2




              Perfect now, +1!
              – CarLaTeX
              Dec 16 at 17:50
















            5














            It is true that you can manually shift the paternal tree...but the problem you are facing is solved in another way.



            The issue is that in the paternal tree, you have termination at only the brother, ego, and sister nodes. But in the maternal tree, you have son, daughter, and niece/nephew nodes terminating. These lower-level nodes force more separation space between brother, ego, and sister -- this space is not required in the paternal tree, because those lower-level nodes don't exist.



            All you need to do is mirror the entire child nodes structure from father and mother downward, like such:



            EDIT:



            The structure requires a very small tweak when you copy and paste. The first image shows what happens when you do not make the tweak. You'll need to flip the g and p in the father and mother nodes within the paternal tree.



            documentclass[a4paper,landscape]{article}
            usepackage[top=4.5cm, bottom=4.5cm, left=1cm, right=1cm]{geometry}
            usepackage[all]{genealogytree}
            begin{document}
            resizebox{textwidth}{!}{
            begin{tikzpicture}
            genealogytree[template=signpost, id suffix=@p]
            {
            child{
            g[male]{paternal grandfather}
            p[female]{paternal grandmother}
            child{
            g[male]{paternal uncle}
            c[male]{cousin}
            child{
            g[female]{cousin}
            }
            }
            child{
            g[female]{paternal aunt}
            c[male]{cousin}
            child{
            g[female]{cousin}
            }
            }
            %OLD WAY
            %child[phantom*]{
            %g[male,id=father]{father}
            %p[female]{mother}
            %c[male]{brother}
            %c{textsc{ego}}
            %c[female]{sister}
            %}
            %MIRRORED FROM MATERNAL TREE (SEE FIRST IMAGE)
            %child[phantom*]{
            %p[male,id=father]{father}
            %g[female]{mother}
            %child{
            %g[male]{brother}
            %c[male]{nephew}
            %child{
            %g[female]{niece}
            %}
            %}
            %child{
            %g{textsc{ego}}
            %c[male]{son}
            %child{
            %g[female]{daughter}
            %}
            %}
            %child{
            %g[female]{sister}
            %c[male]{nephew}
            %child{
            %g[female]{niece}
            %}
            %}
            %}
            %}
            %MIRRORED FROM MATERNAL TREE WITH THE TWEAK (SEE SECOND IMAGE)
            child[phantom*]{
            g[male,id=father]{father}
            p[female]{mother}
            child{
            g[male]{brother}
            c[male]{nephew}
            child{
            g[female]{niece}
            }
            }
            child{
            g{textsc{ego}}
            c[male]{son}
            child{
            g[female]{daughter}
            }
            }
            child{
            g[female]{sister}
            c[male]{nephew}
            child{
            g[female]{niece}
            }
            }
            }
            }
            }
            genealogytree[template=signpost, id suffix=@m, set position=father@m at father@p]
            {
            child{
            g[male]{maternal grandfather}
            p[female]{maternal grandmother}
            child{
            p[male,id=father]{father}
            g[female]{mother}
            child{
            g[male]{brother}
            c[male]{nephew}
            child{
            g[female]{niece}
            }
            }
            child{
            g{textsc{ego}}
            c[male]{son}
            child{
            g[female]{daughter}
            }
            }
            child{
            g[female]{sister}
            c[male]{nephew}
            child{
            g[female]{niece}
            }
            }
            }
            child{
            g[male]{maternal uncle}
            c[male]{cousin}
            c[female]{cousin}
            }
            child{
            g[female]{maternal aunt}
            c[male]{cousin}
            c[female]{cousin}
            }
            }
            }

            end{tikzpicture}
            }
            end{document}


            (without the tweak - a pure copy-and-paste):



            Proper merge of paternal and maternal trees in genealogytree without tweak



            (copy-and-paste plus switching g and p on father and mother nodes):



            Proper merge of paternal and maternal trees in genealogytree with tweak



            I think this way is preferable because of the automatic spacing. The manual shift method should be reserved for what the genealogytree manual on page 44 refers to (which I think does not apply here):




            Note that in a more complicated situation more manual intervention may
            be necessary to avoid unwanted overlapping of other nodes.







            share|improve this answer



















            • 2




              Something missing: the paternal relatives are connected with the mother, instead of the father
              – CarLaTeX
              Dec 16 at 17:32










            • @CarLaTeX Ah, good catch! There's a very small tweak that fixes the copy-and-paste approach. I'll update it now.
              – whatisit
              Dec 16 at 17:39






            • 2




              Perfect now, +1!
              – CarLaTeX
              Dec 16 at 17:50














            5












            5








            5






            It is true that you can manually shift the paternal tree...but the problem you are facing is solved in another way.



            The issue is that in the paternal tree, you have termination at only the brother, ego, and sister nodes. But in the maternal tree, you have son, daughter, and niece/nephew nodes terminating. These lower-level nodes force more separation space between brother, ego, and sister -- this space is not required in the paternal tree, because those lower-level nodes don't exist.



            All you need to do is mirror the entire child nodes structure from father and mother downward, like such:



            EDIT:



            The structure requires a very small tweak when you copy and paste. The first image shows what happens when you do not make the tweak. You'll need to flip the g and p in the father and mother nodes within the paternal tree.



            documentclass[a4paper,landscape]{article}
            usepackage[top=4.5cm, bottom=4.5cm, left=1cm, right=1cm]{geometry}
            usepackage[all]{genealogytree}
            begin{document}
            resizebox{textwidth}{!}{
            begin{tikzpicture}
            genealogytree[template=signpost, id suffix=@p]
            {
            child{
            g[male]{paternal grandfather}
            p[female]{paternal grandmother}
            child{
            g[male]{paternal uncle}
            c[male]{cousin}
            child{
            g[female]{cousin}
            }
            }
            child{
            g[female]{paternal aunt}
            c[male]{cousin}
            child{
            g[female]{cousin}
            }
            }
            %OLD WAY
            %child[phantom*]{
            %g[male,id=father]{father}
            %p[female]{mother}
            %c[male]{brother}
            %c{textsc{ego}}
            %c[female]{sister}
            %}
            %MIRRORED FROM MATERNAL TREE (SEE FIRST IMAGE)
            %child[phantom*]{
            %p[male,id=father]{father}
            %g[female]{mother}
            %child{
            %g[male]{brother}
            %c[male]{nephew}
            %child{
            %g[female]{niece}
            %}
            %}
            %child{
            %g{textsc{ego}}
            %c[male]{son}
            %child{
            %g[female]{daughter}
            %}
            %}
            %child{
            %g[female]{sister}
            %c[male]{nephew}
            %child{
            %g[female]{niece}
            %}
            %}
            %}
            %}
            %MIRRORED FROM MATERNAL TREE WITH THE TWEAK (SEE SECOND IMAGE)
            child[phantom*]{
            g[male,id=father]{father}
            p[female]{mother}
            child{
            g[male]{brother}
            c[male]{nephew}
            child{
            g[female]{niece}
            }
            }
            child{
            g{textsc{ego}}
            c[male]{son}
            child{
            g[female]{daughter}
            }
            }
            child{
            g[female]{sister}
            c[male]{nephew}
            child{
            g[female]{niece}
            }
            }
            }
            }
            }
            genealogytree[template=signpost, id suffix=@m, set position=father@m at father@p]
            {
            child{
            g[male]{maternal grandfather}
            p[female]{maternal grandmother}
            child{
            p[male,id=father]{father}
            g[female]{mother}
            child{
            g[male]{brother}
            c[male]{nephew}
            child{
            g[female]{niece}
            }
            }
            child{
            g{textsc{ego}}
            c[male]{son}
            child{
            g[female]{daughter}
            }
            }
            child{
            g[female]{sister}
            c[male]{nephew}
            child{
            g[female]{niece}
            }
            }
            }
            child{
            g[male]{maternal uncle}
            c[male]{cousin}
            c[female]{cousin}
            }
            child{
            g[female]{maternal aunt}
            c[male]{cousin}
            c[female]{cousin}
            }
            }
            }

            end{tikzpicture}
            }
            end{document}


            (without the tweak - a pure copy-and-paste):



            Proper merge of paternal and maternal trees in genealogytree without tweak



            (copy-and-paste plus switching g and p on father and mother nodes):



            Proper merge of paternal and maternal trees in genealogytree with tweak



            I think this way is preferable because of the automatic spacing. The manual shift method should be reserved for what the genealogytree manual on page 44 refers to (which I think does not apply here):




            Note that in a more complicated situation more manual intervention may
            be necessary to avoid unwanted overlapping of other nodes.







            share|improve this answer














            It is true that you can manually shift the paternal tree...but the problem you are facing is solved in another way.



            The issue is that in the paternal tree, you have termination at only the brother, ego, and sister nodes. But in the maternal tree, you have son, daughter, and niece/nephew nodes terminating. These lower-level nodes force more separation space between brother, ego, and sister -- this space is not required in the paternal tree, because those lower-level nodes don't exist.



            All you need to do is mirror the entire child nodes structure from father and mother downward, like such:



            EDIT:



            The structure requires a very small tweak when you copy and paste. The first image shows what happens when you do not make the tweak. You'll need to flip the g and p in the father and mother nodes within the paternal tree.



            documentclass[a4paper,landscape]{article}
            usepackage[top=4.5cm, bottom=4.5cm, left=1cm, right=1cm]{geometry}
            usepackage[all]{genealogytree}
            begin{document}
            resizebox{textwidth}{!}{
            begin{tikzpicture}
            genealogytree[template=signpost, id suffix=@p]
            {
            child{
            g[male]{paternal grandfather}
            p[female]{paternal grandmother}
            child{
            g[male]{paternal uncle}
            c[male]{cousin}
            child{
            g[female]{cousin}
            }
            }
            child{
            g[female]{paternal aunt}
            c[male]{cousin}
            child{
            g[female]{cousin}
            }
            }
            %OLD WAY
            %child[phantom*]{
            %g[male,id=father]{father}
            %p[female]{mother}
            %c[male]{brother}
            %c{textsc{ego}}
            %c[female]{sister}
            %}
            %MIRRORED FROM MATERNAL TREE (SEE FIRST IMAGE)
            %child[phantom*]{
            %p[male,id=father]{father}
            %g[female]{mother}
            %child{
            %g[male]{brother}
            %c[male]{nephew}
            %child{
            %g[female]{niece}
            %}
            %}
            %child{
            %g{textsc{ego}}
            %c[male]{son}
            %child{
            %g[female]{daughter}
            %}
            %}
            %child{
            %g[female]{sister}
            %c[male]{nephew}
            %child{
            %g[female]{niece}
            %}
            %}
            %}
            %}
            %MIRRORED FROM MATERNAL TREE WITH THE TWEAK (SEE SECOND IMAGE)
            child[phantom*]{
            g[male,id=father]{father}
            p[female]{mother}
            child{
            g[male]{brother}
            c[male]{nephew}
            child{
            g[female]{niece}
            }
            }
            child{
            g{textsc{ego}}
            c[male]{son}
            child{
            g[female]{daughter}
            }
            }
            child{
            g[female]{sister}
            c[male]{nephew}
            child{
            g[female]{niece}
            }
            }
            }
            }
            }
            genealogytree[template=signpost, id suffix=@m, set position=father@m at father@p]
            {
            child{
            g[male]{maternal grandfather}
            p[female]{maternal grandmother}
            child{
            p[male,id=father]{father}
            g[female]{mother}
            child{
            g[male]{brother}
            c[male]{nephew}
            child{
            g[female]{niece}
            }
            }
            child{
            g{textsc{ego}}
            c[male]{son}
            child{
            g[female]{daughter}
            }
            }
            child{
            g[female]{sister}
            c[male]{nephew}
            child{
            g[female]{niece}
            }
            }
            }
            child{
            g[male]{maternal uncle}
            c[male]{cousin}
            c[female]{cousin}
            }
            child{
            g[female]{maternal aunt}
            c[male]{cousin}
            c[female]{cousin}
            }
            }
            }

            end{tikzpicture}
            }
            end{document}


            (without the tweak - a pure copy-and-paste):



            Proper merge of paternal and maternal trees in genealogytree without tweak



            (copy-and-paste plus switching g and p on father and mother nodes):



            Proper merge of paternal and maternal trees in genealogytree with tweak



            I think this way is preferable because of the automatic spacing. The manual shift method should be reserved for what the genealogytree manual on page 44 refers to (which I think does not apply here):




            Note that in a more complicated situation more manual intervention may
            be necessary to avoid unwanted overlapping of other nodes.








            share|improve this answer














            share|improve this answer



            share|improve this answer








            edited Dec 16 at 17:46

























            answered Dec 16 at 17:28









            whatisit

            852313




            852313








            • 2




              Something missing: the paternal relatives are connected with the mother, instead of the father
              – CarLaTeX
              Dec 16 at 17:32










            • @CarLaTeX Ah, good catch! There's a very small tweak that fixes the copy-and-paste approach. I'll update it now.
              – whatisit
              Dec 16 at 17:39






            • 2




              Perfect now, +1!
              – CarLaTeX
              Dec 16 at 17:50














            • 2




              Something missing: the paternal relatives are connected with the mother, instead of the father
              – CarLaTeX
              Dec 16 at 17:32










            • @CarLaTeX Ah, good catch! There's a very small tweak that fixes the copy-and-paste approach. I'll update it now.
              – whatisit
              Dec 16 at 17:39






            • 2




              Perfect now, +1!
              – CarLaTeX
              Dec 16 at 17:50








            2




            2




            Something missing: the paternal relatives are connected with the mother, instead of the father
            – CarLaTeX
            Dec 16 at 17:32




            Something missing: the paternal relatives are connected with the mother, instead of the father
            – CarLaTeX
            Dec 16 at 17:32












            @CarLaTeX Ah, good catch! There's a very small tweak that fixes the copy-and-paste approach. I'll update it now.
            – whatisit
            Dec 16 at 17:39




            @CarLaTeX Ah, good catch! There's a very small tweak that fixes the copy-and-paste approach. I'll update it now.
            – whatisit
            Dec 16 at 17:39




            2




            2




            Perfect now, +1!
            – CarLaTeX
            Dec 16 at 17:50




            Perfect now, +1!
            – CarLaTeX
            Dec 16 at 17:50











            4














            You could use tikz={xshift=...} to shift the paternal relatives.



            documentclass[a4paper,landscape]{article}
            usepackage[top=4.5cm, bottom=4.5cm, left=1cm, right=1cm]{geometry}
            usepackage[all]{genealogytree}
            begin{document}
            resizebox{textwidth}{!}{
            begin{tikzpicture}
            genealogytree[template=signpost, id suffix=@p]
            {
            child{
            g[male]{paternal grandfather}
            p[female]{paternal grandmother}
            child{
            g[male,tikz={xshift=-2.3cm}]{paternal uncle}
            c[male,tikz={xshift=-2.3cm}]{cousin}
            child{
            g[female,tikz={xshift=-2.3cm}]{cousin}
            }
            }
            child{
            g[female,tikz={xshift=-2.3cm}]{paternal aunt}
            c[male,tikz={xshift=-2.3cm}]{cousin}
            child{
            g[female,tikz={xshift=-2.3cm}]{cousin}
            }
            }
            child[phantom*]{
            g[male,id=father]{father}
            p[female]{mother}
            c[male]{brother}
            c{textsc{ego}}
            c[female]{sister}
            }
            }
            }
            genealogytree[template=signpost, id suffix=@m, set position=father@m at father@p]
            {
            child{
            g[male]{maternal grandfather}
            p[female]{maternal grandmother}
            child{
            p[male,id=father]{father}
            g[female]{mother}
            child{
            g[male]{brother}
            c[male]{nephew}
            child{
            g[female]{niece}
            }
            }
            child{
            g{textsc{ego}}
            c[male]{son}
            child{
            g[female]{daughter}
            }
            }
            child{
            g[female]{sister}
            c[male]{nephew}
            child{
            g[female]{niece}
            }
            }
            }
            child{
            g[male]{maternal uncle}
            c[male]{cousin}
            c[female]{cousin}
            }
            child{
            g[female]{maternal aunt}
            c[male]{cousin}
            c[female]{cousin}
            }
            }
            }
            end{tikzpicture}
            }
            end{document}


            enter image description here






            share|improve this answer


























              4














              You could use tikz={xshift=...} to shift the paternal relatives.



              documentclass[a4paper,landscape]{article}
              usepackage[top=4.5cm, bottom=4.5cm, left=1cm, right=1cm]{geometry}
              usepackage[all]{genealogytree}
              begin{document}
              resizebox{textwidth}{!}{
              begin{tikzpicture}
              genealogytree[template=signpost, id suffix=@p]
              {
              child{
              g[male]{paternal grandfather}
              p[female]{paternal grandmother}
              child{
              g[male,tikz={xshift=-2.3cm}]{paternal uncle}
              c[male,tikz={xshift=-2.3cm}]{cousin}
              child{
              g[female,tikz={xshift=-2.3cm}]{cousin}
              }
              }
              child{
              g[female,tikz={xshift=-2.3cm}]{paternal aunt}
              c[male,tikz={xshift=-2.3cm}]{cousin}
              child{
              g[female,tikz={xshift=-2.3cm}]{cousin}
              }
              }
              child[phantom*]{
              g[male,id=father]{father}
              p[female]{mother}
              c[male]{brother}
              c{textsc{ego}}
              c[female]{sister}
              }
              }
              }
              genealogytree[template=signpost, id suffix=@m, set position=father@m at father@p]
              {
              child{
              g[male]{maternal grandfather}
              p[female]{maternal grandmother}
              child{
              p[male,id=father]{father}
              g[female]{mother}
              child{
              g[male]{brother}
              c[male]{nephew}
              child{
              g[female]{niece}
              }
              }
              child{
              g{textsc{ego}}
              c[male]{son}
              child{
              g[female]{daughter}
              }
              }
              child{
              g[female]{sister}
              c[male]{nephew}
              child{
              g[female]{niece}
              }
              }
              }
              child{
              g[male]{maternal uncle}
              c[male]{cousin}
              c[female]{cousin}
              }
              child{
              g[female]{maternal aunt}
              c[male]{cousin}
              c[female]{cousin}
              }
              }
              }
              end{tikzpicture}
              }
              end{document}


              enter image description here






              share|improve this answer
























                4












                4








                4






                You could use tikz={xshift=...} to shift the paternal relatives.



                documentclass[a4paper,landscape]{article}
                usepackage[top=4.5cm, bottom=4.5cm, left=1cm, right=1cm]{geometry}
                usepackage[all]{genealogytree}
                begin{document}
                resizebox{textwidth}{!}{
                begin{tikzpicture}
                genealogytree[template=signpost, id suffix=@p]
                {
                child{
                g[male]{paternal grandfather}
                p[female]{paternal grandmother}
                child{
                g[male,tikz={xshift=-2.3cm}]{paternal uncle}
                c[male,tikz={xshift=-2.3cm}]{cousin}
                child{
                g[female,tikz={xshift=-2.3cm}]{cousin}
                }
                }
                child{
                g[female,tikz={xshift=-2.3cm}]{paternal aunt}
                c[male,tikz={xshift=-2.3cm}]{cousin}
                child{
                g[female,tikz={xshift=-2.3cm}]{cousin}
                }
                }
                child[phantom*]{
                g[male,id=father]{father}
                p[female]{mother}
                c[male]{brother}
                c{textsc{ego}}
                c[female]{sister}
                }
                }
                }
                genealogytree[template=signpost, id suffix=@m, set position=father@m at father@p]
                {
                child{
                g[male]{maternal grandfather}
                p[female]{maternal grandmother}
                child{
                p[male,id=father]{father}
                g[female]{mother}
                child{
                g[male]{brother}
                c[male]{nephew}
                child{
                g[female]{niece}
                }
                }
                child{
                g{textsc{ego}}
                c[male]{son}
                child{
                g[female]{daughter}
                }
                }
                child{
                g[female]{sister}
                c[male]{nephew}
                child{
                g[female]{niece}
                }
                }
                }
                child{
                g[male]{maternal uncle}
                c[male]{cousin}
                c[female]{cousin}
                }
                child{
                g[female]{maternal aunt}
                c[male]{cousin}
                c[female]{cousin}
                }
                }
                }
                end{tikzpicture}
                }
                end{document}


                enter image description here






                share|improve this answer












                You could use tikz={xshift=...} to shift the paternal relatives.



                documentclass[a4paper,landscape]{article}
                usepackage[top=4.5cm, bottom=4.5cm, left=1cm, right=1cm]{geometry}
                usepackage[all]{genealogytree}
                begin{document}
                resizebox{textwidth}{!}{
                begin{tikzpicture}
                genealogytree[template=signpost, id suffix=@p]
                {
                child{
                g[male]{paternal grandfather}
                p[female]{paternal grandmother}
                child{
                g[male,tikz={xshift=-2.3cm}]{paternal uncle}
                c[male,tikz={xshift=-2.3cm}]{cousin}
                child{
                g[female,tikz={xshift=-2.3cm}]{cousin}
                }
                }
                child{
                g[female,tikz={xshift=-2.3cm}]{paternal aunt}
                c[male,tikz={xshift=-2.3cm}]{cousin}
                child{
                g[female,tikz={xshift=-2.3cm}]{cousin}
                }
                }
                child[phantom*]{
                g[male,id=father]{father}
                p[female]{mother}
                c[male]{brother}
                c{textsc{ego}}
                c[female]{sister}
                }
                }
                }
                genealogytree[template=signpost, id suffix=@m, set position=father@m at father@p]
                {
                child{
                g[male]{maternal grandfather}
                p[female]{maternal grandmother}
                child{
                p[male,id=father]{father}
                g[female]{mother}
                child{
                g[male]{brother}
                c[male]{nephew}
                child{
                g[female]{niece}
                }
                }
                child{
                g{textsc{ego}}
                c[male]{son}
                child{
                g[female]{daughter}
                }
                }
                child{
                g[female]{sister}
                c[male]{nephew}
                child{
                g[female]{niece}
                }
                }
                }
                child{
                g[male]{maternal uncle}
                c[male]{cousin}
                c[female]{cousin}
                }
                child{
                g[female]{maternal aunt}
                c[male]{cousin}
                c[female]{cousin}
                }
                }
                }
                end{tikzpicture}
                }
                end{document}


                enter image description here







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Dec 16 at 16:57









                CarLaTeX

                29.5k447125




                29.5k447125






























                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to TeX - LaTeX Stack Exchange!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.





                    Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


                    Please pay close attention to the following guidance:


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f466104%2fdrawing-family-tree-with-genealogytree%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Morgemoulin

                    Scott Moir

                    Souastre