如何旋转页面并让两个图形并排显示?

如何旋转页面并让两个图形并排显示?

我想用一整页来显示两幅图,并将它们以水平布局并排放置。

实现这一目标的最佳方法是什么?提前致谢!

这是我已经尝试过的:

\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage{caption}
\usepackage{subcaption}

\begin{document}

\begin{turn}{90}
\begin{minipage}{\textheight}

\begin{figure}
\centering
\begin{subfigure}
  \centering
  \includegraphics[width=5]{image1}
\end{subfigure}

\begin{subfigure}
  \centering
  \includegraphics[width=5]{image1}
  \caption{A subfigure}
  \label{fig:sub2}
\end{subfigure}
\end{figure}

\end{minipage}
\end{turn}

\end{document}

然而,我收到了错误消息,不幸的是我无法理解。

答案1

你喜欢横向的图形吗?像下图这样? 在此处输入图片描述

它是通过以下 MWE 获得的:

\documentclass{article}
    \usepackage{graphicx}
    \usepackage{caption}
    \usepackage{subcaption}

    \usepackage{rotating}% for sidewaysfigure

    \begin{document}
\begin{sidewaysfigure}
\begin{subfigure}{0.5\hsize}\centering
    \includegraphics[width=0.9\hsize]{example-image-a}
\caption{Sub figure A}
    \label{fig:sub1}
\end{subfigure}%
%\hfill <-- it is superfluous 
\begin{subfigure}{0.5\hsize}\centering
    \includegraphics[width=0.9\hsize]{example-image-b}
\caption{Sub figure B}
    \label{fig:sub2}
\end{subfigure}
\caption{Figure in landscape orientation}
    \label{fig:sub2}
\end{sidewaysfigure}
    \end{document}

您的 MWE 中的错误原因是缺少子图的宽度,正确的语法是,\begin{subfigure}{<width>}并且可能缺少包rotating,除了sideways(图、表)之外,它还定义了宏rotateboxturn等。有关详细信息,请参阅包文档。

编辑: 正如 Gonzalo Medina 在其评论中指出的那样,一个错误是由于使用float(非浮动) 内部的环境minipage(这是被禁止的)引起的。

答案2

虽然 Zarko 已经指出了错误,但这里还有另一种使用方式pdflscape

\documentclass{article}
    \usepackage{graphicx}
    \usepackage{caption}
    \usepackage{subcaption}

    \usepackage{pdflscape}% for landscape

    \begin{document}
\begin{landscape}
\begin{figure}%[htb]
\begin{subfigure}{0.5\hsize}\centering
    \includegraphics[width=0.9\hsize]{example-image-a}
\caption{Sub figure A}
    \label{fig:sub1}
\end{subfigure}%
\begin{subfigure}{0.5\hsize}\centering
    \includegraphics[width=0.9\hsize]{example-image-b}
\caption{Sub figure B}
    \label{fig:sub2}
\end{subfigure}
\caption{Figure in landscape orientation}
    \label{fig:sub2}
\end{figure}
\end{landscape}
    \end{document}

在此处输入图片描述

答案3

Zarko 已经指出了错误,但是答案只显示了另一种方法,尽管将带有子图的小页面旋转 90 度也是一个可行的有效想法。

这是最小的(现在真正起作用的)示例:

姆韦

\documentclass{article}
\usepackage{graphicx}
\usepackage{caption,rotating}
\usepackage{subcaption}
\begin{document}
\begin{figure}
\begin{turn}{90}
\begin{minipage}[c][\textwidth][c]{\textheight}
\begin{subfigure}[h]{.45\linewidth}
\includegraphics[width=\linewidth]{example-image-a}
\caption{A subcaption}
\end{subfigure}\hfill
\begin{subfigure}[h]{.45\linewidth}
\includegraphics[width=\linewidth]{example-image-b}
\caption{A subcaption}
\end{subfigure}
\caption{The main caption}
\end{minipage}
\end{turn}
\end{figure}
\end{document}

或者,如果您想要该包的较短代码subfigure

\documentclass{article}
\usepackage{graphicx}
\usepackage{caption,rotating}
\usepackage{subfigure}
\begin{document}
\begin{figure}
\begin{turn}{90}
\begin{minipage}[c][\textwidth][c]{\textheight}
\subfigure[A subcaption]{\includegraphics[width=.45\linewidth]{example-image-a}}\hfill
\subfigure[B subcaption]{\includegraphics[width=.45\linewidth]{example-image-b}}
\caption{The main caption}
\end{minipage}
\end{turn}
\end{figure}
\end{document}

相关内容