Gráficos de grupo de Pgfplots, leyenda automática y ubicación de nombres de ejes

Gráficos de grupo de Pgfplots, leyenda automática y ubicación de nombres de ejes

Entonces, he estado trabajando en una respuesta aesta preguntay trabajé para adaptarlo a diagramas de grupo, es decir, colocar automáticamente la leyenda en el margen exterior, los ejes y las etiquetas en el interior. A partir de entonces, me enfrento a dos problemas con mwe:

  • ¿Cómo activar/desactivar inteligentemente la etiqueta del eje según el lado? Una forma posible es otro uso de \ifoddpage pero creo que no es bonito. Puede que haya olvidado algo del manual.
  • Cómo utilizar trim axis group left/rightjunto con la ubicación de leyenda propuesta por Jake enesta pregunta? Al recortar ejes, la leyenda se coloca con las posiciones anteriores, no exactamente con los resultados esperados...

Aquí está el archivo principal:

\documentclass{article}
\usepackage{pgfplots}
\usepgfplotslibrary{groupplots}
\usepackage{float}
\usepackage{ifoddpage}


\begin{document}

\begin{figure}[H]
  \input{groupplot}
  \caption{first figure}
\end{figure}

\newpage

\begin{figure}[H]
  \input{groupplot}
  \caption{first figure}
\end{figure}

\end{document}

Y aquí está la groupplot.texfigura:

  \checkoddpage
  \ifoddpage
  \def\yticksside{ edge right}
  \else
  \def\yticksside{ edge left}
  \fi

  \centering
  \begin{tikzpicture}%[trim axis group left,trim axis group right]
    \begin{groupplot}[
        group style = {
          group size = 2 by 1,
          horizontal sep=0mm,
    yticklabels at=\yticksside,
        },
        width=0.5\columnwidth,
        ylabel={$y$label},
      ]

      \nextgroupplot[
        xlabel={$x$},
        legend to name=grouplegend,
    ylabel near ticks,
      ]
      \addplot coordinates { (0,0) (1,1) };
      \addlegendentry{Legend entry}

      \nextgroupplot[
        xlabel={$x$},
    ylabel near ticks,
      ]
      \addplot coordinates { (0,0) (1,1) };
    \end{groupplot}

  \checkoddpage
  \ifoddpage
  \def\legendpos{group c1r1.south west}
  \def\legendanchor{north east}
  \else
  \def\legendpos{group c2r1.south east}
  \def\legendanchor{north west}
  \fi

  \node at (\legendpos) [anchor=\legendanchor]  {\ref{grouplegend}};
  \end{tikzpicture}

información relacionada