这两个图看起来好像被“向左对齐”了。我怎样才能让它们出现在中间或居中?
\documentclass[tikz,border=7pt]{standalone}
\usetikzlibrary{positioning,arrows.meta,shadows.blur}
\usepackage{graphicx}
\usepackage{subcaption}
\begin{document}
\begin{figure}
\begin{center}
\begin{subfigure}{.6\textwidth}
\centering
\includegraphics[width=.9\linewidth]{insesgado_svd_100k}
\caption{Error }
\label{}
\end{subfigure}%
\begin{subfigure}{.6\textwidth}
\centering
\includegraphics[width=.9\linewidth]{sesgado_svd_1M_matlab}
\caption{Error}
\label{}
\end{subfigure}
\caption{ $\Lambda$ f $F$.}
\end{center}
\end{figure}
\end{document}
答案1
也许你正在寻找这样的东西:
(红线表示文本边框)
\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage{subcaption}
%---------------- show page layout. don't use in a real document!
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
\begin{document}
\begin{figure}
\centering
\begin{subfigure}{.45\textwidth}
\includegraphics[width=\linewidth]{insesgado_svd_100k}
\caption{Error }
\label{fig:mysubfig1}
\end{subfigure}\hfil
\begin{subfigure}{.45\textwidth}
\includegraphics[width=\linewidth]{sesgado_svd_1M_matlab}
\caption{Error}
\label{fig:mysubfig2}
\end{subfigure}
\caption{ $\Lambda$ f $F$.}
\label{fig:myfig}
\end{figure}
\end{document}
通过对我的和你的 MWE 的比较,得出以下结论:
- 使用
article
文档类,因为在standalone
类中您不能使用浮点数(没有选项varwidth
),并且您无法在其中看到图像是否在文本中水平居中。简而言之,您的 MWE 不起作用。 - 在
figure
环境中不使用\begin{center}
...\end{center}
环境,因为它会在图像周围插入额外的垂直空间。而是使用\centering
。 - s 的宽度总和
subfigure
应等于或小于\textwidth
。否则它们将溢出文本区域(甚至页面)的右侧。 - 如果您使用 来定义图像宽度
subfigure
,即\includegraphics[width=\linewidth]{....}
,则代码会更短。在这种情况下,您可以省略s\centering
内的命令。subfigure