
Привет, я пытаюсь создать дерево решений в Latex, и на данный момент у меня есть это
Но мое дерево, вероятно, будет важным, поэтому я хочу, чтобы мои узлы были ближе к левому краю, но не в вертикальном измерении. Вот так:
И поскольку я определяю положение с помощью [выше справа], если я изменяю расстояние между узлами, оба узла меняются, и если они расположены слишком близко по вертикали, другие узлы в конечном итоге сталкиваются друг с другом (я знаю, что некоторые узлы перекрываются справа, я могу это исправить, это не моя проблема на данный момент).
Вот мой код
\documentclass[a4paper]{article}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{amsmath, amsthm, amssymb}
\usepackage{graphicx}
\usepackage[colorinlistoftodos]{todonotes}
\usepackage{fullpage}
\usepackage{listings}
\usepackage{booktabs}
\usepackage{tikz-cd}
\usetikzlibrary{shapes,arrows}
\usetikzlibrary{calc,trees,positioning,arrows,chains,shapes.geometric,shapes}
\begin{document}
\tikzstyle{block3} = [rectangle, draw, fill=white, text width=4cm, text centered, rounded corners, minimum height=4em]
\begin{tikzpicture}[node distance = 4cm, auto]
\node [block3] (MDS) {Y a-t-il eu MDS ? };
\node [block3, above right of=MDS, node distance = 8cm] (Jeune) {Jeune \\ Plus ou moins de 25 ans ? };
\node [block3, above right of=Jeune] (Jeune_Non) {Non Jeune \\ Problème};
\node [block3, below right of=Jeune] (Jeune_Oui) {Jeune};
\node [block3, above right of =Jeune_Oui](18) {18 ans dans l'année N};
\node [block3, right of =Jeune_Oui](21) {jusqu'à 21 ans en N };
\node [block3, below right of =Jeune_Oui](25) {jusqu'à 25 ans en N \\ Si étudiant N-1, possible avec les parents \\ EEC : EOCCUA 4};
\node [block3, below right of=MDS, node distance = 8cm] (MDS_Oui) {Personne avec un MDS};
\end{tikzpicture}
\end{document}
Подводя итог, моя проблема заключается в том, что когда я располагаю узлы справа или снизу, они находятся на диагонали (скажем, в половине второго по часам), а мне бы хотелось, чтобы они были в половине первого или в час.
решение1
Вы можете указать xshift
.
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\begin{document}
\tikzstyle{block3}=[rectangle,draw,fill=white,text width=4cm,text centered,rounded corners,minimum height=4em]
\begin{tikzpicture}[node distance=4cm,auto]
\node [block3](MDS){Y a-t-il eu MDS ?};
\node [block3,above of=MDS,xshift=3cm,node distance=4cm](Jeune){Jeune \\ Plus ou moins de 25 ans ?};
\node [block3,above right of=Jeune](Jeune_Non){Non Jeune \\ Problème};
\node [block3,below right of=Jeune](Jeune_Oui){Jeune};
\node[block3,above right of=Jeune_Oui](18){18 ans dans l'année N};
\node[block3,right of=Jeune_Oui](21){jusqu'à 21 ans en N };
\node[block3,below right of=Jeune_Oui](25){jusqu'à 25 ans en N \\ Si étudiant N-1,possible avec les parents \\ EEC : EOCCUA 4};
\node [block3,below of=MDS,xshift=3cm,node distance=4cm](MDS_Oui){Personne avec un MDS};
\end{tikzpicture}
\end{document}