Drawing family tree with `genealogytree`











up vote
2
down vote

favorite
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




























    up vote
    2
    down vote

    favorite
    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


























      up vote
      2
      down vote

      favorite
      1









      up vote
      2
      down vote

      favorite
      1






      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 2 hours ago









      Alan Munn

      158k27423697




      158k27423697










      asked 3 hours ago









      Miztli

      2101312




      2101312






















          2 Answers
          2






          active

          oldest

          votes

















          up vote
          3
          down vote



          accepted










          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
            2 hours ago










          • @CarLaTeX Ah, good catch! There's a very small tweak that fixes the copy-and-paste approach. I'll update it now.
            – whatisit
            2 hours ago






          • 1




            Perfect now, +1!
            – CarLaTeX
            2 hours ago


















          up vote
          2
          down vote













          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',
            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








            up vote
            3
            down vote



            accepted










            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
              2 hours ago










            • @CarLaTeX Ah, good catch! There's a very small tweak that fixes the copy-and-paste approach. I'll update it now.
              – whatisit
              2 hours ago






            • 1




              Perfect now, +1!
              – CarLaTeX
              2 hours ago















            up vote
            3
            down vote



            accepted










            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
              2 hours ago










            • @CarLaTeX Ah, good catch! There's a very small tweak that fixes the copy-and-paste approach. I'll update it now.
              – whatisit
              2 hours ago






            • 1




              Perfect now, +1!
              – CarLaTeX
              2 hours ago













            up vote
            3
            down vote



            accepted







            up vote
            3
            down vote



            accepted






            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 2 hours ago

























            answered 2 hours ago









            whatisit

            577213




            577213








            • 2




              Something missing: the paternal relatives are connected with the mother, instead of the father
              – CarLaTeX
              2 hours ago










            • @CarLaTeX Ah, good catch! There's a very small tweak that fixes the copy-and-paste approach. I'll update it now.
              – whatisit
              2 hours ago






            • 1




              Perfect now, +1!
              – CarLaTeX
              2 hours ago














            • 2




              Something missing: the paternal relatives are connected with the mother, instead of the father
              – CarLaTeX
              2 hours ago










            • @CarLaTeX Ah, good catch! There's a very small tweak that fixes the copy-and-paste approach. I'll update it now.
              – whatisit
              2 hours ago






            • 1




              Perfect now, +1!
              – CarLaTeX
              2 hours ago








            2




            2




            Something missing: the paternal relatives are connected with the mother, instead of the father
            – CarLaTeX
            2 hours ago




            Something missing: the paternal relatives are connected with the mother, instead of the father
            – CarLaTeX
            2 hours ago












            @CarLaTeX Ah, good catch! There's a very small tweak that fixes the copy-and-paste approach. I'll update it now.
            – whatisit
            2 hours ago




            @CarLaTeX Ah, good catch! There's a very small tweak that fixes the copy-and-paste approach. I'll update it now.
            – whatisit
            2 hours ago




            1




            1




            Perfect now, +1!
            – CarLaTeX
            2 hours ago




            Perfect now, +1!
            – CarLaTeX
            2 hours ago










            up vote
            2
            down vote













            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

























              up vote
              2
              down vote













              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























                up vote
                2
                down vote










                up vote
                2
                down vote









                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 2 hours ago









                CarLaTeX

                28.7k447123




                28.7k447123






























                    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

                    Quarter-circle Tiles

                    build a pushdown automaton that recognizes the reverse language of a given pushdown automaton?

                    Mont Emei