
Mithilfe von Matlab2tikz
habe ich eine Datei mit 104 Nebenhandlungen erstellt, die auf eine ganz bestimmte Weise angeordnet sind. Anschließend habe ich eingefügt \pgfplotsset{yticklabel style={text width=2em,align=right},}
, kompiliert und das endgültige PDF erhalten, das in Ordnung war, außer dass die Anordnung der Nebenhandlungen immer noch nicht zufriedenstellend ist:
Ich versuche, die Nebenhandlungen so besser zu organisieren, dass:
- es wird die gleiche vertikale Abstände geben,
- Nur zwei
ylabels
pro Nebenhandlung
Gibt es eine Möglichkeit dies zu tun, ohne jedes einzelne ändern zu müssen addplot
?
Aktualisieren:
Mit der Lösung vonStefan Pinnow, fiel mir auf, dass die Reihenfolge immer noch falsch ist. Das liegt daran, dass die generierte *.tikz-Datei mit dem zweiten Subplot (von links) in der unteren Reihe begann und die folgenden Subplots relativ dazu positionierte. Dies führte natürlich dazu, dass die resultierende Abbildung mitgroupplot
völlig falsch. Daher denke ich, dass ich mich an dieaxis
Umgebung und spielen Sie weiter, yticklabels
um den Abstand zu verbessern.
Irgendeine Idee, wie man drei yticklabels
pro Nebenhandlung automatisch reparieren kann?
Antwort1
- Ich denke, der einfachste (konsistente) Weg, dies zu implementieren, ist die Verwendung der
groupplots
Bibliothek (sieheAbschnitt 5.8 des PGFPlots-Handbuchs auf Seite 428ff (in v1.13). - Da Sie nicht genau angegeben habenWas"zwei ylabels" Sie benötigen, schlage ich vor, ein wenig mit den Tasten
max space between ticks
und zu spielentry min ticks
. Andere interessante Tasten könntenytick
(in Kombination mitytick distance
) oder seinyticklabels from table
. Alle diese Tasten können dem\nextgroupplot
Befehl direkt als optionale Argumente übergeben werden oder - falls sie selbst wiederholt werden sollten - als Stile, die Sie in der Präambel definieren können.
Nachfolgend finden Sie ein wirklich einfaches Beispiel für die groupplot
Umgebung.
\documentclass[border=2mm]{standalone}
\usepackage{pgfplots}
\usepgfplotslibrary{groupplots}
\begin{document}
\begin{tikzpicture}
\begin{groupplot}[
tiny,
/tikz/mark size=1.5pt,
group style={
group name=my plots,
group size=2 by 2,
horizontal sep=4mm, % <-- default: 1cm
vertical sep=2mm, % <-- default: 1cm
xticklabels at=edge bottom,
},
width=3cm,
height=3cm,
]
\nextgroupplot[group/empty plot]
\nextgroupplot
\addplot coordinates{(0,0) (1,2) (2,1)};
\nextgroupplot
\addplot coordinates{(0,0) (1,2) (2,1)};
\nextgroupplot
\addplot coordinates{(0,0) (1,2) (2,1)};
\end{groupplot}
\end{tikzpicture}
\end{document}