我想以 3 x 2 格式排列 5 个数字。我希望这些数字看起来像这样:
我尝试了以下操作(见下文),但无法使第二行中的两个数字居中。
\documentclass{article}
\usepackage{graphicx}
\begin{document}
\begin{figure}[h]
\begin{center}$
\begin{array}{lll}
\includegraphics[width=50mm]{example-image-b}&
\includegraphics[width=50mm]{example-image-b}&
\includegraphics[width=50mm]{example-image-b}
\end{array}$
\end{center}
\begin{center}$
\begin{array}{rr}
\includegraphics[width=50mm]{example-image-b}&
\includegraphics[width=50mm]{example-image-b}
\end{array}$
\end{center}
\caption{Figure caption}
\label{pics:blablabla}
\end{figure}
\end{document}
这是我得到的:
答案1
它简单多了:
\documentclass{article}
\usepackage{graphicx}
\begin{document}
\begin{figure}[htp]
\centering
\includegraphics[width=.3\textwidth]{example-image-b}\quad
\includegraphics[width=.3\textwidth]{example-image-b}\quad
\includegraphics[width=.3\textwidth]{example-image-b}
\medskip
\includegraphics[width=.3\textwidth]{example-image-b}\quad
\includegraphics[width=.3\textwidth]{example-image-b}
\caption{Figure caption}
\label{pics:blablabla}
\end{figure}
\end{document}
关于您的代码。首先,您可能没有可用的 150mm,加上列间空间。通过使用,.3\textwidth
我们知道我们将占用分配宽度的 9/10。
第二。$\begin{array}...\end{array}$
您可以使用tabular
: 相同的语法,但进入文本模式(甚至可以进入数学模式)。但不需要两个表格:只需将两行居中即可,只需记住在\quad
两幅图像之间留出一些空间(此处为 )。行之间的垂直空间,瞧瞧。;-)
答案2
如果您想使用子标题来区分图形,可以使用以下代码:
\documentclass[12pt,a4paper]{article}
\usepackage{graphicx}
\usepackage{float}
\begin{document}
\begin{figure} [H]
\centering
\begin{tabular}{cccc}
\includegraphics[width=0.3\textwidth]{example-image-a} &
\includegraphics[width=0.3\textwidth]{example-image-b} &
\includegraphics[width=0.3\textwidth]{example-image-c} \\
\textbf{(a)} & \textbf{(b)} & \textbf{(c)} \\[6pt]
\end{tabular}
\begin{tabular}{cccc}
\includegraphics[width=0.3\textwidth]{example-image-a} &
\includegraphics[width=0.3\textwidth]{example-image-b} \\
\textbf{(d)} & \textbf{(e)} \\[6pt]
\end{tabular}
\caption{ \textbf{(a)} Some text
\textbf{(b)} Some text
\textbf{(c)} Some text
\textbf{(d)} Some text
\textbf{(e)} Some text}
\label{fig:Name}
\end{figure}
\end{document}
答案3
您提供的代码确实中心按照你的需要设置。只是页面不够宽。如果我添加\usepackage[paperwidth=25.0cm,showframe]{geometry}
,你会得到:
array
此外,由于您没有数学内容,因此不需要使用环境,简单tabular
就足够了。此外,您应该按照以下说明使用环境\centering
:center
何时应使用 \begin{center} 而不是 \centering?。
笔记:
- 该
[showframe]
选项已应用于包裹geometry
只是为了显示页边距。 @{}
在列的开始和结束处消除tabular
了在表格的开始和结束处添加的列填充。- 如果您希望图形水平对齐,此
tabular
解决方案非常有用。如果您不需要对齐图形(即,您只是希望它们水平分布),则 Werner 或 egreg 的解决方案是可行的。
代码:
\documentclass{article}
\usepackage{graphicx}
\usepackage[paperwidth=25.0cm,showframe]{geometry}
\begin{document}
\begin{figure}[h]
\begin{center}$
\begin{array}{lll}
\includegraphics[width=50mm]{example-image-b}&
\includegraphics[width=50mm]{example-image-b}&
\includegraphics[width=50mm]{example-image-b}
\end{array}$
\end{center}
\begin{center}$
\begin{array}{rr}
\includegraphics[width=50mm]{example-image-b}&
\includegraphics[width=50mm]{example-image-b}
\end{array}$
\end{center}
\caption{Figure caption}
\label{pics:blablabla}
\end{figure}
\end{document}
代码:\centering
\documentclass{article}
\usepackage{graphicx}
\usepackage[paperwidth=25.0cm,showframe]{geometry}
\begin{document}
\begin{figure}[h]
{\centering%
\begin{tabular}{@{}lll@{}}
\includegraphics[width=50mm]{example-image-b}&
\includegraphics[width=50mm]{example-image-b}&
\includegraphics[width=50mm]{example-image-b}
\end{tabular}\par}
{\centering%
\begin{tabular}{@{}rr@{}}
\includegraphics[width=50mm]{example-image-b}&
\includegraphics[width=50mm]{example-image-b}
\end{tabular}
\caption{Figure caption}
\label{pics:blablabla}\par}
\end{figure}
\end{document}
答案4
tcolorbox
此类分布的替代方案由with环境提供tcbraster
。在这种情况下,选项raster halign=center
可确保最后的行框在其行上居中。
下面的代码显示了两个示例,第一个示例仅放置没有任何子标题的图像,而第二个示例使用subfig
包允许为每个子图添加特定的标题。
\documentclass{article}
\usepackage[most]{tcolorbox}
\usepackage{subfig} %For subcaptions
\newcommand{\mysubfig}[3][width=\linewidth]{%
\tcbitem\subfloat[#2]{\includegraphics[#1]{#3}}}
\begin{document}
\begin{figure}
\begin{tcbraster}[
raster columns=3,
raster halign=center,
raster every box/.style={blankest},
]
\tcbincludegraphics{example-image-b}
\tcbincludegraphics{example-image-b}
\tcbincludegraphics{example-image-b}
\tcbincludegraphics{example-image-b}
\tcbincludegraphics{example-image-b}
\end{tcbraster}
\caption{Figure caption}
\label{pics:blablabla}
\end{figure}
\begin{figure}
\begin{tcbitemize}[
raster columns=3,
raster halign=center,
raster every box/.style={blankest}
]
\mysubfig{}{example-image-b}
\mysubfig{}{example-image-b}
\mysubfig{}{example-image-b}
\mysubfig{}{example-image-b}
\mysubfig{}{example-image-b}
\end{tcbitemize}
\caption{Figure caption}
\label{pics:blablabla}
\end{figure}
\end{document}