104 Nebenplots in pgfplots automatisch ausrichten

104 Nebenplots in pgfplots automatisch ausrichten

Mithilfe von Matlab2tikzhabe 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:

Bildbeschreibung hier eingeben

Ich versuche, die Nebenhandlungen so besser zu organisieren, dass:

  1. es wird die gleiche vertikale Abstände geben,
  2. Nur zwei ylabelspro 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 mitgroupplotvöllig falsch. Daher denke ich, dass ich mich an dieaxisUmgebung und spielen Sie weiter, yticklabelsum den Abstand zu verbessern.

Irgendeine Idee, wie man drei yticklabelspro Nebenhandlung automatisch reparieren kann?

Antwort1

  1. Ich denke, der einfachste (konsistente) Weg, dies zu implementieren, ist die Verwendung der groupplotsBibliothek (sieheAbschnitt 5.8 des PGFPlots-Handbuchs auf Seite 428ff (in v1.13).
  2. Da Sie nicht genau angegeben habenWas"zwei ylabels" Sie benötigen, schlage ich vor, ein wenig mit den Tasten max space between ticksund zu spielen try min ticks. Andere interessante Tasten könnten ytick(in Kombination mit ytick distance) oder sein yticklabels from table. Alle diese Tasten können dem \nextgroupplotBefehl 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 groupplotUmgebung.

\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}

Bild, das das Ergebnis des obigen Codes zeigt

verwandte Informationen