是否可以缩放整个 \begin{figure}?

是否可以缩放整个 \begin{figure}?

我有一堆来自 Gnuplot 的 LaTeX 输出,我想真的喜欢独自一人。有没有简单的方法来缩放整个图形?

就像是

\includegraphics[scale=0.5]{...}

但仅仅是为了figure环境?

如果这很重要,我会

\begin{figure}
\input{plot.tex}
\end{figure}

输出来自 gnuplot 使用“设置终端 latex”等等。

答案1

您正在寻找宏

  • \resizebox{<h-length>}{<v-length>}{<content>}
  • \scalebox{<h-scale>}[<v-scale>]{<content>}

来自 graphics/graphicx软件包 (→graphics手动的,3.3“缩放”,第 3 页)。

\scalebox期望的比例类似于您在中使用的比例\includegraphics,您将使用

\begin{figure}
    \scalebox{.5}{\input{plot.tex}}
\end{figure}

或者,如果你想将内容调整为固定宽度(或高度),

\begin{figure}
    \resizebox{.9\linewidth}{!}{\input{plot.tex}}
\end{figure}

表示!内容被调整大小以保持其纵横比。

还存在带星号的版本\resizebox,您可以使用长度\height\width和来引用内容的原始大小;这意味着因子\totalheight也可以与一起使用:\depth.5\resizebox

\begin{figure}
    \resizebox{.5\totalheight}{!}{\input{plot.tex}}
\end{figure}

答案2

如果您使用缩放的子图并希望非子图的图与其他图的布局相匹配,那么您也可以在只有一个图的情况下使用子图代码:

\begin{figure}[t]
  \centering
  \begin{subfigure}[b]{0.95\textwidth}
     \include{plot.tex}
  \end{subfigure}
  \caption{
    My caption...
  }
  \label{fig:myPlot}
\end{figure}

(就我而言,使用其他建议的答案会导致情节的某些部分不匹配 - 可能是轴标签或图例,我忘了 - 因此我采用了一种黑客方法。)

答案3

使用ratio\textwidth可以更轻松地解决调整图形大小的问题。

\begin{figure}[!ht]
    \centering
    \includegraphics[width=0.45\textwidth]{figures.png}
    \caption{in 0.45, you can use any ratio that fits your single figure}
    \label{fig:label01}
\end{figure}

相关内容