La mayor parte del árbol desaparece cuando es demasiado grande.

La mayor parte del árbol desaparece cuando es demasiado grande.

Estoy intentando dibujar árboles con sufijos en látex para un informe. Como estoy programando árboles, simplemente los imprimo en formato qtree desde mi código para no tener que molestarme en hacerlos manualmente.

Para árboles pequeños esto funciona muy bien. (El ejemplo habitual de "plátano" está llegando)

\documentclass{article}
\usepackage{graphics}
\usepackage{qtree}

\begin{document}
    \begin{center}
        \Tree[.  [.\$ ]
        [.banana\$ ]
        [.a [.n [.a [.na\$ ]
        [.\$ ]
        ]  ] [.\$ ]
        ] [.n [.a [.na\$ ]
        [.\$ ]
        ]  ]  ]
    \end{center}
\end{document}

Árbol de sufijo para $banana$

Pero si quiero dibujar un árbol más grande, como "no sé algo grande", utilizo el mismo proceso:

\documentclass{article}
\usepackage{graphics}
\usepackage{qtree}

\begin{document}
    \begin{center}
        \Tree[.  [.\$idontknowsomethingbig\$ ]
        [.i [.dontknowsomethingbig\$ ]
        [.ngbig\$ ]
        [.g\$ ]
        ] [.dontknowsomethingbig\$ ]
        [.o [.ntknowsomethingbig\$ ]
        [.wsomethingbig\$ ]
        [.methingbig\$ ]
        ] [.n [.tknowsomethingbig\$ ]
        [.owsomethingbig\$ ]
        [.gbig\$ ]
        ] [.t [.knowsomethingbig\$ ]
        [.hingbig\$ ]
        ] [.knowsomethingbig\$ ]
        [.wsomethingbig\$ ]
        [.somethingbig\$ ]
        [.methingbig\$ ]
        [.ethingbig\$ ]
        [.hingbig\$ ]
        [.g [.big\$ ]
        [.\$ ]
        ] [.big\$ ]
        ]
    \end{center}
\end{document}

Todo lo que consigo es esto

árbol roto

Dependiendo de la entrada, puedo obtener la última rama o simplemente una palabra como en este caso.

Supongo que el código es sintácticamente correcto y que el problema radica en que es demasiado grande y el látex se confunde. Pero que yo sepa, podría ser cualquier cosa.

Respuesta1

El problema como explican los comentarios es queqtreeNo puede manejar más de 14 sucursales. La solución fue simplemente utilizar el bosque. Con él ahora puedo dibujar árboles más grandes como este:

Gran árbol genómico aleatorio

Que proviene de:

\documentclass[border=1mm]{standalone}
\usepackage{graphics}
\usepackage{forest}


\begin{document}

        \begin{forest}
            for tree={
                calign=center,
                grow'=east,
                parent anchor=east, child anchor=west,
                text height=1.4ex, text depth=0.2ex 
            }
            [.  [.\$GATTACATAGCTGATGCTAGCTATATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.G [.A [.T [.TACATAGCTGATGCTAGCTATATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.G [.C [.TAGCTATATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.GCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            ]  ] [.AGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.CTGS\$ ]
            ]  ] [.C [.T [.GATGCTAGCTATATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.A [.G [.C [.T [.A [.TATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.GTCGTAGCTATGATCTGS\$ ]
            ]  ]  ] [.TCGTAGCTATGATCTGS\$ ]
            ] [.T [.ATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.GATCTGS\$ ]
            ]  ] [.CGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            ] [.G [.CTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.ATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            ]  ] [.T [.C [.G [.ATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.TAGCTATGATCTGS\$ ]
            ]  ] [.AGCTATGATCTGS\$ ]
            ] [.S\$ ]
            ] [.A [.T [.TACATAGCTGATGCTAGCTATATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.A [.G [.C [.T [.GATGCTAGCTATATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.AGCTAGTCGTAGCTATGATCTGS\$ ]
            ]  ]  ] [.TCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            ] [.G [.C [.TAGCTATATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.GCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            ] [.ATCTGS\$ ]
            ] [.C [.GTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.TGS\$ ]
            ]  ] [.CATAGCTGATGCTAGCTATATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.G [.C [.T [.GATGCTAGCTATATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.A [.T [.ATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.GATCTGS\$ ]
            ] [.G [.CTAGTCGTAGCTATGATCTGS\$ ]
            [.TCGTAGCTATGATCTGS\$ ]
            ]  ]  ]  ] [.TCGTAGCTATGATCTGS\$ ]
            ]  ] [.T [.TACATAGCTGATGCTAGCTATATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.A [.CATAGCTGATGCTAGCTATATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.G [.C [.T [.GATGCTAGCTATATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.A [.T [.ATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.GATCTGS\$ ]
            ] [.G [.CTAGTCGTAGCTATGATCTGS\$ ]
            [.TCGTAGCTATGATCTGS\$ ]
            ]  ]  ]  ] [.TCGTAGCTATGATCTGS\$ ]
            ] [.T [.ATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.CGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.GATCTGS\$ ]
            ]  ] [.G [.A [.T [.GCTAGCTATATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.CTGS\$ ]
            ]  ] [.C [.TAGCTATATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.GCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            ] [.S\$ ]
            ] [.C [.G [.T [.CGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.AGCTATGATCTGS\$ ]
            ] [.ATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.CGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            ] [.TGS\$ ]
            ]  ] [.C [.ATAGCTGATGCTAGCTATATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.T [.G [.ATGCTAGCTATATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.S\$ ]
            ] [.A [.G [.C [.T [.A [.TATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.GTCGTAGCTATGATCTGS\$ ]
            ]  ]  ] [.TCGTAGCTATGATCTGS\$ ]
            ] [.T [.ATCGTCGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.GATCTGS\$ ]
            ]  ] [.CGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            ] [.G [.T [.CGATGCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.AGCTATGATCTGS\$ ]
            ] [.A [.T [.GCGCTCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.AGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            ]  ] [.C [.TCGCGATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            [.GATAGCTAGCTAGTCGTAGCTATGATCTGS\$ ]
            ]  ]  ] [.S\$ ]
            ] 
        \end{forest}  


\end{document}

La sintaxis forestdifiere de qtree, por lo que cada nodo tiene un '.' adicional. personaje en este ejemplo. Tenga esto en cuenta si está utilizando esta respuesta como ejemplo sobre cómo construir árboles usando el bosque :)

información relacionada