在子图中垂直对齐 tikz 图

在子图中垂直对齐 tikz 图

我有两个图,我想使用 将它们并排显示subfigure。其中一个图需要一个图例,我想将其显示在图上方,因为它与图本身不太相配(图例文本太长)。

我使用一些演示数据创建了以下 MWE,这表明图未垂直对齐,即 x 轴的位置不匹配。

我该如何解决这个问题(最好使用对齐的标题)?

演示

\documentclass{article}

    \usepackage{caption}
    \usepackage{subcaption}

    \usepackage{tikz}
    \usepackage{pgfplots}

    \begin{document}

    \begin{figure}
      \newlength{\plotwidth}
      \setlength{\plotwidth}{0.4\textwidth}
      \begin{subfigure}{0.4\textwidth}
        \begin{tikzpicture}
          \begin{axis}[%
          /pgf/number format/.cd, use comma, 1000 sep={},
          width=0.95\plotwidth,
          height=0.75\plotwidth,
          scale only axis,
          xlabel={xlabel},
          ylabel={ylabel},
          axis background/.style={fill=white},
          axis x line*=bottom,
          axis y line*=left,
          legend style={at={(-0.3,1.03)},anchor=south west,legend cell align=left,align=left,draw=white!15!black}
          ]
          \addplot [color=blue,solid,line width=4.0pt]
            table[row sep=crcr]{%
          -1602 3410\\
          -1630 3360\\
          -1630 3359\\
          };
          \addlegendentry{legend-1};

          \addplot [color=red,solid,line width=2.0pt,mark=*,mark options={solid,fill=red}]
            table[row sep=crcr]{%
          -1602 3410\\
          -1619 3379\\
          -1636 3349\\
          -1686 3397\\
          -1669 3428\\
          };
          \addlegendentry{legend-2};
          \end{axis}
        \end{tikzpicture}%
        \caption{caption-a}
      \end{subfigure} 
      \quad\quad
      \begin{subfigure}{0.4\textwidth}%
        \begin{tikzpicture}
          \begin{axis}[%
          /pgf/number format/.cd, use comma, 1000 sep={},
          width=0.95\plotwidth,
          height=0.75\plotwidth,
          scale only axis,
          xmin=0,
          xmax=250,
          xlabel={xlabel},
          ymin=-0.035,
          ymax=0.001,
          ylabel={ylabel},
          axis background/.style={fill=white},
          axis x line*=bottom,
          axis y line*=left
          ]
          \addplot [color=blue,solid,forget plot]
          table[row sep=crcr]{%
          0       0\\
          244     0\\
          };%
          \end{axis}%
        \end{tikzpicture}%
        \caption{caption-b}        
      \end{subfigure}         
      \caption{full-caption}
    \end{figure}
    \end{document}

答案1

您可以传递一个选项来\begin{subfigure}指定对齐方式。添加[b]到您的两个子图环境中:\begin{subfigure}[b]{0.4\textwidth}

图像对齐

相关内容