使用 subcaption 包将两张没有子标题的图片对齐到顶部

使用 subcaption 包将两张没有子标题的图片对齐到顶部

我的问题与此类似:

使用子标题时按图形顶部边框对齐

我想将两张图片对齐到顶部。给出的解决方案对于带有副标题的图片很有效。但我的图片不应该有副标题,两张图片只能有一个标题。所以如果我删除副标题,图片就不会对齐到顶部。

梅威瑟:

documentclass[a4paper,11pt]{article} 
\usepackage{subcaption}
\usepackage{tikz,pgf,pgfplots}  
\pgfplotsset{compat=newest}
\usetikzlibrary{plotmarks,shapes,positioning,fit}
\pgfkeys{/pgf/number format/.cd ,use comma ,set thousands separator={.}} 
\usetikzlibrary{calc}
\usetikzlibrary{spy}
\usepgfplotslibrary{external}
\pgfkeys{/pgf/images/include external/.code=\includegraphics{#1}}
\tikzexternalize[prefix=tikzpdf/]% activate with a name prefix
\usepackage{filemod}
\newcommand{\includetikz}[2]{
\tikzsetnextfilename{#2}
\filemodCmp{tikzpictures/#1/#2.tex}{tikzpdf/#2.pdf}
    {\tikzset{external/remake next}}{}
    \input{tikzpictures/#1/#2.tex}  
            }
\begin{document}
\begin{figure}[htb]
    \centering
    \begin{subfigure}[t]{0.35\textwidth}
        \centering
        %\caption{}
        \includegraphics[width=\textwidth]{ort_unten}
        \label{fig:skizze_ort_unten}
    \end{subfigure}
    \begin{subfigure}[t]{0.55\textwidth}
        \centering
        %\caption{}
        \setlength{\fwidth}{\textwidth}
        \setlength{\fheight}{7cm}
        \includetikz{ort}{ort_unten}
    \end{subfigure}
    \caption{one picture (left) and a graph (right)}
    \label{fig:ort_unten}
\end{figure}   
\end{document}

结果如下:

结果

有可能修复这个问题吗?

答案1

因为subfigures 是minipages,所以以下技巧有效:\vspace*{0pt}在每个 之后添加\begin{subfigure}

mweMWE(由于我没有你的,所以我使用了包中的图像)

\documentclass[a4paper,11pt]{article}
\usepackage{subcaption}
\usepackage{tikz,pgf,pgfplots}
\pgfplotsset{compat=newest}
\usetikzlibrary{plotmarks,shapes,positioning,fit}
\pgfkeys{/pgf/number format/.cd ,use comma ,set thousands separator={.}}
\usetikzlibrary{calc}
\usetikzlibrary{spy}
\usepgfplotslibrary{external}
\pgfkeys{/pgf/images/include external/.code=\includegraphics{#1}}
\tikzexternalize[prefix=tikzpdf/]% activate with a name prefix
\usepackage{filemod}
\newcommand{\includetikz}[2]{
\tikzsetnextfilename{#2}
\filemodCmp{tikzpictures/#1/#2.tex}{tikzpdf/#2.pdf}
    {\tikzset{external/remake next}}{}
    \input{tikzpictures/#1/#2.tex}
            }
\begin{document}
\begin{figure}[htb]
    \centering
    \begin{subfigure}[t]{0.35\textwidth}
    \vspace*{0pt}
        \centering
        %\caption{}
        \includegraphics[width=\textwidth]{example-image-a}
        \label{fig:skizze_ort_unten}
    \end{subfigure}
    \begin{subfigure}[t]{0.55\textwidth}
    \vspace*{0pt}
        \centering
        %\caption{}
        %\setlength{\fwidth}{\textwidth}
        %\setlength{\fheight}{7cm}
        \includegraphics[width=\textwidth]{example-image-b}
    \end{subfigure}
    \caption{one picture (left) and a graph (right)}
    \label{fig:ort_unten}
\end{figure}
\end{document} 

输出:

在此处输入图片描述

答案2

由于我没有你提到的图片,所以我使用了一些mwe. 由于我不熟悉tikz,我只能猜测这是否会起作用:

在此处输入图片描述

\documentclass{article} 
\usepackage{subcaption}
\usepackage[export]{adjustbox}
\begin{document}
\begin{figure}[htb]
  \centering
  \begin{subfigure}[t]{0.35\textwidth}
    \centering
    %\caption{}
    \includegraphics[width=\linewidth,valign=t]{example-image-a}
    \label{fig:skizze_ort_unten}
  \end{subfigure}
  \begin{subfigure}[t]{0.55\textwidth}
    \centering
    %\caption{}
    \includegraphics[width=\linewidth,height=7cm,valign=t]{example-image-b}
  \end{subfigure}
  \caption{one picture (left) and a graph (right)}
  \label{fig:ort_unten}
\end{figure}   
\end{document}

这个想法是使用adjustbox使用export选项。这adjustbox将向以下选项添加选项:graphicx允许您设置每幅图像的v垂直align方向。我选择在top 处对齐它们。

相关内容