
Usando Matlab2tikz
generé un archivo que contiene 104 subtramas alineadas de una manera muy específica. Luego inserté \pgfplotsset{yticklabel style={text width=2em,align=right},}
, compilé y obtuve el PDF final, que estaba bien, excepto que la disposición de las subtramas aún no es satisfactoria:
Estoy tratando de organizar mejor las subtramas de manera que:
- habrá el mismo espaciado vertical,
- Sólo dos
ylabels
por subtrama
¿Existe la posibilidad de hacer esto sin tener que modificar cada uno de ellos addplot
?
Actualizar:
Utilizando la solución propuesta porStefan Pinnow, Noté que el orden sigue siendo incorrecto. Esto se debe a que el archivo *.tikz generado comenzó desde la segunda subtrama (desde la izquierda) en la fila inferior y se ubicó a continuación de las subtramas en relación con ella. Esto, por supuesto, hizo que la figura resultante usaragroupplot
Completamente mal. Por lo tanto, creo que estoy obligado a ceñirme a loaxis
Entorno y juego yticklabels
para mejorar el espacio.
¿Alguna idea de cómo arreglar automáticamente tres yticklabels
por trama secundaria?
Respuesta1
- Creo que la forma más fácil (consistente) de implementar esto es usar la
groupplots
biblioteca (eche un vistazo asección 5.8 del manual de PGFPlots en la página 428ff (en v1.13). - Como no has especificado exactamentequé"dos ylabels" que necesitas, te sugiero jugar un poco con las teclas
max space between ticks
ytry min ticks
. Otras claves de interés podrían serytick
(en combinación conytick distance
) oyticklabels from table
. Todas estas claves podrían proporcionarse como argumentos opcionales para el\nextgroupplot
comando directamente o, en caso de que deban repetirse, como estilos que puede definir en el preámbulo.
Encuentre un ejemplo realmente simple para el groupplot
entorno a continuación.
\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}