LaTeX子图排版全攻略:从subcaption到多图并排,解决学术写作难题

LaTeX子图排版subcaption
于 2026-07-31 06:54:50 修改
·本内容遵循CC 4.0 BY-SA版权协议

1. 项目概述:为什么LaTeX中的子图排版是学术写作的“硬骨头”?

如果你正在用LaTeX撰写论文、报告或者任何需要图文并茂的文档,那么“如何优雅地并排多张图片”这个问题,大概率会让你在某个深夜对着编译错误抓狂。这不仅仅是把两张图摆在一起那么简单,它涉及到浮动体控制、子图环境选择、跨页处理、引用标签以及最终排版的美观性。网上流传的代码片段往往只解决表面问题,一旦你的需求稍微复杂一点,比如三张图并排、每张图需要独立的子标题(a)、(b)、(c),并且整体还有一个总标题,同时还要确保它们在页面中的位置合理、引用准确,你就会发现这里面坑连着坑。

我自己在撰写第一篇SCI论文时,就曾在这个问题上耗费了整整一个下午。编译器不报错,但图片要么跑到了奇怪的位置,要么子图编号错乱,要么总标题对不齐。从那时起,我系统地研究了LaTeX中处理子图和图片并排的各种方案,从最基础的 minipage,到强大的 subcaption 宏包,再到与 floatrowcaption 宏包的配合使用。今天,我就把这些年积累的经验、踩过的坑和最佳实践,整理成一篇可以直接“抄作业”的指南。无论你是LaTeX新手,还是已经有一定基础但被子图困扰的用户,这篇文章都将帮你彻底搞定这个难题。

2. 核心方案选型:从 minipagesubcaption,我们该如何选择?

面对图片并排的需求,LaTeX社区提供了多种工具,但各有各的适用场景和“脾气”。选错了工具,后续的调整会事倍功半。下面我们来详细拆解几种主流方案,帮你做出最合适的选择。

2.1 基础但局限的 minipage 方案

minipage 环境是LaTeX的基础构件之一,它可以在页面内创建一个“迷你页面”。用它来并排图片,思路非常简单:创建两个或多个等宽的 minipage,在每个里面插入一张图。

LATEX
\begin{figure}[htbp]
\centering
\begin{minipage}[t]{0.48\textwidth}
\centering
\includegraphics[width=\linewidth]{image1.png}
\caption{第一张图片的说明}
\label{fig:image1}
\end{minipage}
\hfill
\begin{minipage}[t]{0.48\textwidth}
\centering
\includegraphics[width=\linewidth]{image2.png}
\caption{第二张图片的说明}
\label{fig:image2}
\end{minipage}
\caption{两张并排图片的总标题}
\label{fig:two_images}
\end{figure}

为什么这么写?

  • [t] 参数让 minipage 顶部对齐,这对于高度不同的图片保持排版整齐至关重要。
  • 0.48\textwidth 为每个 minipage 分配略小于一半的宽度,中间的 \hfill 会产生弹性空白,确保两者不会挤在一起,而是均匀分布在行宽内。
  • \includegraphics[width=\linewidth] 让图片宽度充满 minipage 的文本宽度,这是实现等宽排列的关键。

这个方案的“坑”在哪里? 最大的问题是子图引用。\label 必须放在 \caption 之后,但这里每个 minipage 都有自己的 \caption,它们生成的是独立的图标题(如“图1”、“图2”),而不是我们期望的子图编号(如“图1a”、“图1b”)。当你用 \ref{fig:image1} 引用时,得到的是“图1”,这完全破坏了子图的概念。因此,minipage 只适用于不需要独立引用子图、或者两张图本身就是完全独立个体的场景。

2.2 功能强大的 subcaption 宏包方案(推荐)

这是目前处理子图问题的事实标准subcaption 宏包提供了 subfigure 环境(旧语法)和 subcaptionbox 命令(新语法,更灵活),它能完美解决子图编号、引用和总标题问题。

首先,你需要在导言区加载宏包:\usepackage{subcaption}

方案一:使用 subfigure 环境(传统且直观)

LATEX
\begin{figure}[htbp]
\centering
\begin{subfigure}[b]{0.45\textwidth}
\centering
\includegraphics[width=\linewidth]{result_a.pdf}
\caption{算法A的收敛曲线}
\label{fig:sub_a}
\end{subfigure}
\hfill
\begin{subfigure}[b]{0.45\textwidth}
\centering
\includegraphics[width=\linewidth]{result_b.pdf}
\caption{算法B的收敛曲线}
\label{fig:sub_b}
\end{subfigure}
\caption{两种优化算法的性能对比}
\label{fig:performance}
\end{figure}

为什么推荐这个方案?

  1. 自动编号subfigure 环境会自动为子图生成 (a), (b), (c) 这样的编号,与主图编号(如“图1”)关联。
  2. 独立引用:通过 \ref{fig:sub_a} 可以精确引用到“图1a”。
  3. 对齐控制[b] 参数表示底部对齐,这对于高度不一致的图片非常有用,能让标题在同一水平线上。
  4. 总标题独立:主 \caption 作为整个 figure 环境的标题,层次清晰。

方案二:使用 subcaptionbox 命令(更简洁灵活) subcaptionbox 是更新、更推荐的命令,它省去了子环境的嵌套,语法更简洁。

LATEX
\begin{figure}[htbp]
\centering
\subcaptionbox{实验组数据可视化\label{fig:exp}}%
[0.45\textwidth]{\includegraphics[width=\linewidth]{exp.png}}
\hfill
\subcaptionbox{对照组数据可视化\label{fig:ctrl}}%
[0.45\textwidth]{\includegraphics[width=\linewidth]{ctrl.png}}
\caption{实验组与对照组的对比分析}
\label{fig:comparison}
\end{figure}

subcaptionbox 的第一个参数是子标题,第二个带方括号的参数是盒子宽度,第三个参数是内容(图片)。它的优势在于可以轻松处理非图片内容(如表格、公式)的并排,且代码结构更扁平。

实操心得:关于宏包冲突 早期很多人使用 subfig 宏包,它同样提供 \subfloat 命令。但 subfigcaption 宏包可能存在兼容性问题,尤其是在自定义标题格式时。subcaption 宏包被设计为 caption 宏包的“官方”扩展,兼容性更好,功能也更现代。因此,除非你维护的旧模板强制要求,否则一律推荐使用 subcaption

2.3 特殊场景:floatrow 宏包实现精细控制

当你需要对并排图片的间距、标题位置(比如放在侧面)、整体边框等进行像素级控制时,floatrow 宏包是终极武器。它通过“浮动行”和“浮动列”的概念来组织内容。

LATEX
\usepackage{floatrow} % 导言区
\floatsetup[figure]{style=plain, subcapbesideposition=top} % 设置子图标题在侧面顶部
 
\begin{figure}[htbp]
\begin{floatrow}
\ffigbox[0.45\textwidth]{
\includegraphics[width=\linewidth]{mesh.pdf}
}{
\caption{三维网格模型}\label{fig:mesh}
}
\hfill
\ffigbox[0.45\textwidth]{
\includegraphics[width=\linewidth]{contour.pdf}
}{
\caption{应力云图}\label{fig:contour}
}
\end{floatrow}
\caption{有限元分析结果展示}
\label{fig:fem_results}
\end{figure}

floatrow 功能强大但语法相对复杂,学习曲线较陡。它更适合用于制作教科书、画册等对版面有极高要求的文档。对于绝大多数科技论文,subcaption 已经足够强大和易用。

3. 核心细节解析与实操要点

选定了 subcaption 作为主力工具后,我们来看看如何用它应对各种复杂情况,并避开那些常见的陷阱。

3.1 多行多列子图的排列

并排两张图很简单,那四张、六张、三张呢?关键在于灵活组合 \hfill(水平填充)和 \\(换行)。

示例:2x2 四宫格子图

LATEX
\begin{figure}[htbp]
\centering
% 第一行
\begin{subfigure}[b]{0.48\textwidth}
\centering
\includegraphics[width=\linewidth]{fig1.png}
\caption{阶段一}
\label{fig:s1}
\end{subfigure}
\hfill
\begin{subfigure}[b]{0.48\textwidth}
\centering
\includegraphics[width=\linewidth]{fig2.png}
\caption{阶段二}
\label{fig:s2}
\end{subfigure}
 
% 换行,增加垂直间距
\vspace{0.5cm}
 
% 第二行
\begin{subfigure}[b]{0.48\textwidth}
\centering
\includegraphics[width=\linewidth]{fig3.png}
\caption{阶段三}
\label{fig:s3}
\end{subfigure}
\hfill
\begin{subfigure}[b]{0.48\textwidth}
\centering
\includegraphics[width=\linewidth]{fig4.png}
\caption{阶段四}
\label{fig:s4}
\end{subfigure}
\caption{项目实施的四个关键阶段示意图}
\label{fig:stages}
\end{figure}

要点解析:

  • 宽度计算:每行两个子图,每个宽度设为 0.48\textwidth,留出 \hfill 的弹性空间。如果设置成 0.5\textwidth,图片会紧贴在一起,没有间隙,通常不美观。
  • 垂直间距:使用 \vspace{0.5cm} 在两行之间添加固定间距。LaTeX默认的行间距(\\)对于图片来说通常太小。你可以通过 \vspace{\baselineskip} 来使用正文行距,或者像这里一样指定一个具体值。
  • 对齐参数:所有 subfigure 都使用 [b](底部对齐),这确保了同一行内,即使图片高度不同,它们的标题也能对齐在一条水平线上。这是保持排版整洁的关键技巧。

示例:三张图并排(等宽) 三张图等宽并排时,每张图的宽度应略小于 0.32\textwidth

LATEX
\begin{subfigure}[b]{0.31\textwidth}
% ... 内容
\end{subfigure}
\hfill
\begin{subfigure}[b]{0.31\textwidth}
% ... 内容
\end{subfigure}
\hfill % 注意这里也需要 \hfill
\begin{subfigure}[b]{0.31\textwidth}
% ... 内容
\end{subfigure}

注意,每两个 subfigure 环境之间都需要 \hfill 来均匀分布空间。

3.2 子图标题与引用的深度定制

subcaption 宏包与 caption 宏包紧密集成,这意味着你可以通过 caption 宏包的强大功能来定制子图标题的格式。

1. 修改子图编号格式 默认格式是“(a)”。如果你想改成“a.” 或 “(A)”,可以在导言区进行全局设置:

LATEX
\usepackage{caption}
\usepackage{subcaption}
\captionsetup[subfigure]{labelformat=simple, labelsep=colon} % 简单格式,用冒号分隔
\renewcommand{\thesubfigure}{\alph{subfigure}} % 默认就是小写字母,此命令可改为 \Alph 得到大写字母

labelformat 可选 simple(仅标签)、parens(括号,默认)、brace(花括号)等。labelsep 设置标签与标题文本之间的分隔符,如 colon(冒号)、period(句点)、space(空格)。

2. 引用子图的技巧 在正文中引用时,\ref{fig:sub_a} 只会产生“a”。如果你希望引用显示为完整的“图1a”,有更优雅的方法:

LATEX
\usepackage{cleveref} % 一个非常智能的引用宏包
% 在导言区加载

然后在正文中,你可以使用 \cref{fig:sub_a}cleveref 会自动根据被引用的对象类型(图、表、公式、子图)加上“图”、“表”等前缀,生成“图1a”。如果引用多个,如 \cref{fig:sub_a,fig:sub_b},它会自动生成“图1a和图1b”,极大地提升了写作效率并减少了错误。

注意事项:加载顺序 宏包的加载顺序有时会引发难以排查的错误。一个安全的顺序是:先加载图形、字体等基础宏包,再加载 caption,然后加载 subcaption,最后加载 cleverefhyperref 宏包(用于生成超链接)通常应该放在所有宏包的最后,cleveref 应在 hyperref 之前。

LATEX
\usepackage{graphicx}
\usepackage{caption}
\usepackage{subcaption}
\usepackage{cleveref}
\usepackage{hyperref}

3.3 图片尺寸、格式与路径的最佳实践

并排图片的美观度,很大程度上取决于原始图片的质量和处理。

1. 尺寸一致性是王道 在将图片插入LaTeX之前,最好先用图片处理软件(如Photoshop、GIMP,或Python的Matplotlib、PIL库)将所有用于并排的图片处理成相同的高度。LaTeX的 [width=\linewidth] 选项能保证它们在 subfigure 盒子内等宽显示,但如果原始高度差异巨大,即使使用底部对齐 [b],视觉上也会显得不协调。对于数据图,在生成时(如用Matplotlib)就固定好 figsize

2. 矢量格式优先 对于曲线图、示意图,优先使用 PDFEPS 格式。它们是矢量图,无限放大不失真,打印效果极佳。LaTeX对PDF的支持最好。避免使用JPG格式的图表,它是有损压缩,文字边缘会有毛刺。

3. 位图格式的选择 对于照片、屏幕截图等,可以使用PNG(支持透明)或JPG。确保分辨率足够,一般印刷要求300 DPI以上,屏幕显示72-150 DPI即可。在 \includegraphics 中不要过度缩放,例如将一张100x100像素的图强行拉大到 \textwidth,结果必然是模糊的。

4. 路径管理 如果图片放在子文件夹中,可以使用 \graphicspath{{figures/}} 命令来设置搜索路径,这样在 \includegraphics 中只需写文件名。保持项目结构清晰,将所有的图片资源放在一个专门的目录(如 ./figures/)下,是个好习惯。

4. 完整实操流程与核心环节实现

让我们通过一个完整的、贴近真实论文写作的场景,将上述所有知识点串联起来。假设我们要在一篇论文的“实验结果”章节中插入一组对比图,包含2行x2列共4个子图,并需要在正文中多处引用。

4.1 环境准备与宏包加载

首先,确保你的文档类(如 article, report, IEEEtran)支持这些宏包。创建一个新的 .tex 文件,或在现有文件的导言区(\begin{document} 之前)添加以下代码:

LATEX
\documentclass[11pt, a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{graphicx} % 插入图片
\usepackage{caption} % 定制标题
\usepackage{subcaption} % 子图功能
\usepackage{cleveref} % 智能引用
% hyperref 通常最后加载,为PDF添加链接
\usepackage[colorlinks=true, linkcolor=blue, citecolor=red, urlcolor=magenta]{hyperref}
 
\title{关于XX算法的实验报告}
\author{你的名字}
\date{\today}
 
% 可选:全局设置图表标题格式
\captionsetup[figure]{font=small, labelfont=bf} % 图标题用小号字体,标签加粗
\captionsetup[subfigure]{labelformat=parens, font=footnotesize} % 子图标签带括号,字体更小
 
\begin{document}
\maketitle

4.2 编写并排子图代码

在正文部分(如 \section{实验结果} 之后),插入我们的2x2子图代码块。为了更清晰,我们给每个子图加上边框,以便在编译后检查对齐情况(正式提交时可移除边框)。

LATEX
\section{实验结果与分析}
\label{sec:results}
 
为了全面评估XX算法的性能,我们从精度、召回率、运行时间和内存消耗四个维度进行了测试,结果如\cref{fig:comprehensive_results}所示。
 
\begin{figure}[!htbp] % [!htbp] 是更积极的浮动位置参数
\centering
\captionsetup[subfigure]{justification=centering} % 确保子标题居中
 
% 第一行:精度与召回率
\begin{subfigure}[b]{0.48\textwidth}
\centering
\fbox{\includegraphics[width=0.95\linewidth]{figures/precision_curve.pdf}} % \fbox 用于显示边框
\caption{不同参数下的精度变化}
\label{fig:precision}
\end{subfigure}
\hfill
\begin{subfigure}[b]{0.48\textwidth}
\centering
\fbox{\includegraphics[width=0.95\linewidth]{figures/recall_curve.pdf}}
\caption{不同参数下的召回率变化}
\label{fig:recall}
\end{subfigure}
 
\vspace{0.8\baselineskip} % 使用行距的倍数作为垂直间距
 
% 第二行:时间与内存
\begin{subfigure}[b]{0.48\textwidth}
\centering
\fbox{\includegraphics[width=0.95\linewidth]{figures/time_cost.pdf}}
\caption{算法运行时间对比}
\label{fig:time}
\end{subfigure}
\hfill
\begin{subfigure}[b]{0.48\textwidth}
\centering
\fbox{\includegraphics[width=0.95\linewidth]{figures/memory_usage.pdf}}
\caption{算法内存占用对比}
\label{fig:memory}
\end{subfigure}
 
\caption{XX算法综合性能评估结果。(a)和(b)展示了算法在不同阈值下的精度与召回率,体现了其有效性;(c)和(d)分别对比了与基线算法在运行效率和资源消耗上的差异。}
\label{fig:comprehensive_results}
\end{figure}

代码详解与意图:

  • [!htbp]:这是LaTeX浮动体位置参数。h表示“此处”(here),t表示“页面顶部”(top),b表示“页面底部”(bottom),p表示“单独一页”(page)。!表示放松一些严格的排版限制,更努力地将图放在指定位置。这个组合是最常用的,告诉LaTeX“尽量放在这里,不行就放页面顶部或底部”。
  • \fbox{}0.95\linewidth\fbox 为图片添加了一个边框,在调试阶段非常有用,可以直观地看到每个 subfigure 盒子的实际边界。因为加了边框,所以将图片宽度设为 0.95\linewidth,让图片和边框之间有一点内边距,更美观。正式文档中应移除 \fbox 并将宽度改回 \linewidth
  • \vspace{0.8\baselineskip}:使用基于行距 (\baselineskip) 的相对单位来设置行间距,这比固定值(如 0.5cm)更能适应不同的文档格式。
  • 详细的总标题:总标题不仅描述了图中有什么,还进行了解读:“(a)和(b)展示了...体现了...;(c)和(d)分别对比了...”。这是一种很好的实践,能让读者即使不看正文也能理解图表的核心信息。

4.3 在正文中实现智能引用

现在,我们可以在正文中引用这些子图了。使用 cleveref 宏包让这一切变得简单而准确。

LATEX
如\cref{fig:precision}所示,当参数$\alpha$在0.3到0.5区间时,算法精度保持在95\%以上,表现出良好的稳定性。然而,从\cref{fig:time,fig:memory}可以看出,高性能的代价是运行时间和内存占用分别增加了约15\%和20\%。综合\cref{fig:comprehensive_results}的所有指标,我们建议在实时性要求不高的场景下,将参数$\alpha$设置为0.4,以取得精度与效率的最佳平衡。

编译后,这段文字中的引用会自动显示为:“如图1a所示...从图1c和1d可以看出...综合图1的所有指标...”。cleveref 自动处理了“图”字前缀和多个引用的连接词(“和”),完全避免了手动输入“图1a”可能带来的编号不一致错误。

5. 常见问题与排查技巧实录

即使按照最佳实践操作,在实际写作中你仍可能遇到一些棘手的问题。下面是我在多次实践中总结出的“故障排查清单”。

5.1 图片位置“乱飞”或不显示

这是LaTeX新手最常遇到的问题。现象是图片没有出现在你编写代码的附近,而是跑到了文档末尾或下一页。

原因与解决方案:

  1. 浮动体限制:LaTeX的 figure 环境是一个“浮动体”(float),它的设计初衷是为了避免页面中出现大片空白,所以LaTeX会寻找合适的位置放置它。[htbp] 只是偏好设置,不是强制命令。

    • 对策:首先接受“浮动”是LaTeX的正常特性。如果图片必须紧跟某段文字,可以考虑使用 \usepackage{float} 宏包,然后在 figure 环境选项中使用 [H](大写H),这将强制图片“就在此处”,但可能导致当前页排版不佳,慎用。
    • 更好的做法:在文中使用 \cref 引用图片,即使图片浮动到了后面,引用链接也能带读者跳转过去。确保你的 \label 写在 \caption 之后。
  2. 图片尺寸过大:如果图片本身分辨率很高,或者你设置的 \textwidth 超过了 \linewidth,LaTeX在尝试放置它时可能会遇到困难。

    • 对策:使用 \includegraphics[width=0.9\linewidth, height=0.4\textheight, keepaspectratio] 等选项明确限制图片最大尺寸。keepaspectratio 参数确保宽高比不变。
  3. 缺少 \centering:如果 figure 环境内没有 \centering,图片可能会靠左对齐,在并排时导致混乱。

5.2 子图编号或引用错误

表现为子图编号不是 (a), (b) 而是 1, 2,或者引用 \ref 时得到错误数字。

原因与解决方案:

  1. \label 位置错误\label 命令必须放在 \caption 命令之后,因为它记录的是 \caption 生成的计数器值。放在 \includegraphics 之后、\caption 之前是常见错误。

    LATEX
    % 错误
    \includegraphics... \label{fig:bad} \caption{...}
    % 正确
    \includegraphics... \caption{...} \label{fig:good}
  2. 宏包冲突或未加载:确保导言区正确加载了 subcaption。如果同时意外加载了 subfigsubcaption,它们会冲突。检查你的文档类或模板是否自动加载了某些宏包。

  3. 多次编译:LaTeX的引用系统需要多次编译才能稳定。当你新增或修改了 \label 后,标准的编译流程是:LaTeX -> BibTeX (如果需要) -> LaTeX -> LaTeX。通常连续运行两次LaTeX就能解决大部分引用问题。

5.3 子图间距与对齐不美观

图片挤在一起,或者标题高低不齐。

解决方案:

  • 水平间距:确保在 subfigure 环境之间使用了 \hfill。调整 subfigure 的宽度参数(如从 0.48\textwidth 改为 0.45\textwidth)可以增加图片间的空白。
  • 垂直对齐:统一使用 [b](底部对齐)或 [t](顶部对齐)参数。对于高度差异大的图片,[b] 通常效果更好,因为它让标题底部对齐。
  • 自定义间距:你可以使用 \hspace{1cm} 来插入固定的水平间距,或者用 \vspace 控制垂直间距,这比依赖 \hfill 的弹性间距更可控。

5.4 编译错误:“Undefined control sequence” 或 “Missing \begin{document}”

这通常是因为宏包命令拼写错误或宏包未加载。

排查步骤:

  1. 检查 \usepackage{subcaption} 是否拼写正确。
  2. 检查 \begin{subfigure}\end{subfigure} 是否配对。
  3. 确保没有在 \begin{document} 之前使用 \subcaptionbox 等正文命令。
  4. 查看编译日志文件(.log),错误信息通常会给出更具体的行号和建议。

5.5 与期刊/会议模板的兼容性问题

许多学术期刊和会议提供自己的LaTeX模板,它们可能修改了图表标题的格式,或者使用了特定的宏包。

应对策略:

  1. 最后加载你的宏包:在模板的导言区之后,\begin{document} 之前,加载你自己的宏包(如 subcaption, cleveref)。这样你的设置可能会覆盖模板的默认设置。
  2. 使用模板提供的命令:有些模板定义了自家的命令来处理子图(如IEEE的 \subfloat)。优先使用模板文档中说明的方法。
  3. 隔离测试:将你的子图代码块单独放在一个最小工作示例(MWE)文件中进行测试,排除模板其他部分的影响。
  4. 查阅模板文档:仔细阅读模板的说明文档(.pdf或.tex文件内的注释),看是否有关于多图排版的特殊说明。

最后,一个非常实用的小技巧:在调试复杂的子图布局时,可以临时在所有 subfigure 环境或 \includegraphics 外面加上 \fbox,并给它们设置不同的背景色(如 \colorbox{lightgray}{...},需要 xcolor 宏包),这样就能在生成的PDF中清晰地看到每个盒子的边界和范围,对于定位对齐和间距问题有奇效。当一切调整妥当后,再移除这些调试框。这个过程就像前端开发中用浏览器开发者工具查看元素盒子模型一样直观有效。

LaTeX子图排版全攻略:subcaption宏包到多图网格布局实践
本文系统讲解基于subcaption宏包的LaTeX子图排版技术,涵盖两/三并列、2x2网格布局、混合内容(表格/公式)嵌入、子标题样式定制、浮动体定位控制、间距微调、交叉引用优化及大型网格性能调优等核心实践。重点强调subcaption作为现代LaTeX子图标准宏包的语法优势、兼容性与稳定性,适用于学术论文、技术报告等高要求图文排版场景。
投研帮
258
LaTeX插图全攻略:从基础插入到浮动体与子图排版
本文系统讲解LaTeX插图核心技术,涵盖graphicx宏包基础语法、图片缩放与旋转控制、路径管理策略;深入解析浮动体(figure环境)机制、子图排版subcaption)、并排与位置控制;覆盖常见编译错误排查、大型项目优化技巧及水印、页眉Logo、Matplotlib图表集成等进阶应用,强调内容与格式分离的排版哲学。
Tina 小姐姐
317
LaTeX表格并排排版全攻略:minipage与subcaption方案详解
本文系统讲解LaTeX中实现表格并排的三种主流方案minipage环境(提供底层布局控制)、subcaption宏包(支持子标题与交叉引用)及嵌套tabular环境(适用于简单等宽场景)。重点剖析垂直对齐、水平间距、超宽处理、浮动体控制等关键技术难点,并给出实操步骤、调试技巧与常见问题解决方案,覆盖学术论文与技术文档中的典型需求。
易行男·龙大崇
231
LaTeX图片处理全攻略:从浮动体原理到实战排版技巧
本文系统讲解LaTeX图片处理核心机制,重点剖析浮动体(float)原理、graphicx宏包用法、图片格式选择(PDF/PNG优先)、尺寸与比例控制、子图并排subcaption)、标签引用自动化及常见问题排查。涵盖编译报错、位置失控、编号显示为??、质量锯齿等典型问题的成因与解决方案,并给出VS Code环境优化建议,聚焦学术文档高效排版
weixin_30617695
417
LaTeX多图并排子图排版全攻略:从minipage到subcaption
在科技文档排版中,多图并排展示是清晰呈现对比数据、实验结果的常见需求。其核心原理基于LaTeX的盒子模型,通过创建水平排列的容器来实现。掌握这一技术对于提升论文、报告的专业性与可读性具有重要价值,尤其在学术出版、技术文档撰写等场景中至关重要。本文深入解析了使用minipage环境进行基础控制,以及借助subcaption宏包实现智能子图编号与引用的方法,并针对图片“乱飞”、高度不一致等常见问题提供了实战解决方案,帮助读者高效处理LaTeX中的多图排版挑战。
weixin_30908103
69
LaTeX多图并排排版全攻略:从minipage到subcaption
学术写作和科技文档排版中,图文混排是基础且关键的需求。LaTeX作为专业的排版系统,其核心哲学在于内容与格式分离,通过浮动体(float)机制自动优化版面布局。这一原理使得多图并排、添加独立子图标题和标签成为一项需要深入理解的技术。掌握minipage、subfigure和subcaption等环境或宏包,不仅能实现精准的图片对齐与自动编号,更能通过交叉引用提升文档的专业性和可读性。对于撰写学术论文、技术报告等规范性文档而言,高效的多图排版技术能极大解放作者,使其更专注于内容创作。本文聚焦于LaTeX图片
76
LaTeX学术论文排版全攻略:从环境搭建到实战避坑
本文系统讲解LaTeX学术论文排版全流程涵盖TeX Live/MiKTeX环境搭建、VS Code+LaTeX Workshop编辑器配置、Zotero文献管理;详解文档类选择、宏包加载(amsmath, graphicx, hyperref等)、数学公式排版、浮动体控制、三线表制作、BibTeX参考文献管理;深入解析fancyhdr页眉页脚定制、titlesec章节样式修改、latexmk自动化编译及多文件项目管理;并提供中文排版、编译错误排查、Git协作等实战避坑方案。
weixin_34416754
397
LaTeX图片插入全攻略:从基础到高级技巧(含常见问题解决方案)
本文系统讲解LaTeX中图片插入的核心技术,涵盖浮动环境使用、位置参数(h/t/b/p/!/H)、尺寸与旋转控制、subfigure/subcaption多图排版、跨栏与透明背景处理、图例定制及交叉引用优化。强调PDF矢量图优先、路径管理、性能压缩策略,并提供常见问题的实证解决方案,适用于学术论文与技术文档高质量排版
何之源
408
LaTeX图片处理全攻略:从浮动体原理到多图编排实战
本文深入解析LaTeX图片处理核心机制,重点阐述figure浮动环境的原理与位置参数(h/t/b/p)控制策略,对比subfigure与subcaption宏包在多子图编排中的应用,详解\includegraphics命令的尺寸缩放、裁剪、旋转及现代格式(PDF/PNG/JPG)支持,并涵盖图文绕排、路径管理、图表目录生成及常见编译错误排查等关键技术。
weixin_30634661
362
LaTeX公式排版全攻略:从基础语法到学术论文实战
本文系统讲解LaTeX数学公式排版技术,涵盖行内与行间公式环境、上下标、分式、根式、函数名等基础语法;矩阵、align多行对齐、cases分段函数等复杂结构;mhchem化学公式、algorithmicx算法伪代码等扩展应用;VSCode+LaTeX Workshop工作流、BibTeX文献管理、常见编译错误排查;以及LaTeX与Word/PPT、OCR识别、Python/Jupyter的协同方案。
weixin_33701564
405
ACM MM投稿避坑指南LaTeX搞定公式、组合与表格(附完整模板配置)
本文针对ACM MM会议投稿场景,系统梳理LaTeX排版关键痛点acmart模板正确配置(v1.80+)、XeLaTeX编译环境搭建、中英文混排字体兼容方案;详解公式对齐与符号规范、subcaption组合图排版、三线表制作;涵盖Git协作结构、自动化编译脚本及投稿前格式校验清单,全面提升学术论文交付质量。
weixin_30268071
412
LaTeX排版进阶从图文混排到专业表格与公式布局
本文系统讲解LaTeX图文混排、三线表制作、公式对齐与编号等关键技术。重点涵盖graphicx宏包图像控制、booktabs三线表规范、align环境公式排版subcaption多图管理,以及浮动体定位(如\clearpage、\FloatBarrier)和跨栏处理策略。强调相对单位适配、浮动体引用原则及编译注意事项,面向科研论文高质量出版需求。
weixin_30820077
383
LaTeX图片插入全攻略:从环境配置到高级排版技巧
本文系统讲解LaTeX中图片插入的核心技术,涵盖graphicx宏包与\includegraphics命令的用法、figure浮动体环境配置、多图并排subcaption)、常见问题排查(路径错误、位置偏移、引用失效等)、SVG/PDF格式处理、尺寸控制与裁剪、caption样式定制及自动化最佳实践。重点强调相对尺寸单位、浮动体位置参数、编译多遍机制及跨平台兼容性要求。
GreedyAbyss
229
LaTeX图片处理全攻略:从单图插入到多图并排的完整工作流
学术写作和技术文档排版中,图文混排是提升文档可读性和专业性的关键环节。LaTeX作为专业的排版系统,其核心哲学在于内容与格式分离,通过宏包扩展功能实现精准控制。graphicx宏包是处理图片的基础工具,它提供了强大的图片插入、缩放和裁剪功能,而subcaption宏包则解决多图并排与独立子标题的排版需求。掌握这些工具的组合使用,能够构建从单图处理到复杂图布局的完整工作流,显著提升学术论文、技术报告等文档的排版效率与美观度。无论是毕业论文的图表编排,还是工程文档的示意图排列,这套方法都能提供稳定可靠的解
学术论文LaTeX模板下载与使用全攻略:从获取到投稿避坑指南
本文系统讲解学术论文LaTeX模板的获取、验证、环境配置、编译流程及内容适配方法。重点涵盖官方渠道(期刊官网、Overleaf、CTAN)模板下载与版本核验,本地TeX Live/MiKTeX环境搭建,LaTeX-BibTeX/Biber编译链配置,元信息填写、图表插入、数学公式兼容性、参考文献样式匹配等关键技术环节,并提供投稿前格式检查与常见陷阱规避策略。
weixin_33720956
436
数学建模竞赛Python可视化实战从图表选择到论文排版全攻略
数据可视化是数据科学和工程实践中的核心技能,它通过将抽象数据转化为直观图形,极大地提升了信息传递效率与分析洞察力。其技术原理在于利用人类视觉系统对形状、颜色、模式的快速感知能力,将多维、复杂的数据关系进行降维和模式化呈现。在Python生态中,Matplotlib和Seaborn构成了基础而强大的可视化工具箱,能够高效生成统计图表。这项技术的价值不仅在于美观,更在于其能够清晰阐述模型逻辑、验证算法结果并进行有效的对比分析,是学术研究、商业分析和竞赛报告中不可或缺的环节。本文聚焦于数学建模竞赛这一典型应用场景
weixin_34292402
118
Overleaf到Arxiv保姆级迁移指南搞定.bbl文件与宏包依赖(附避坑清单)
本文详解从Overleaf迁移到Arxiv的LaTeX论文提交全流程,重点解决.bbl文件生成与校验、宏包白名单兼容性、编译警告处理、文件结构规范等核心问题。涵盖环境差异分析、本地测试方法、常见失败原因及替代方案,确保一次通过Arxiv严格编译审查。
dengliugong3918
399
学术写作利器——LaTeX入门笔记整理
LaTeX 入门知识详解】学术写作领域,LaTeX 是一种备受推崇的文本处理系统,尤其适合于复杂的数学公式、图表以及专业论文的排版
qq_27513067
2026
latex怎么让标题并排
本文介绍了在LaTeX中实现图片并排显示并为每个图片添加独立标题的方法。首先,区分了minipage和subcaption包的使用场景,minipage适用于简单的并排图片,而subcaption适用于需要图标题的复杂布局。接着,详细说明了如何使用subcaption宏包创建子图,并调整子图标题格式以符合学术期刊规范。最后,提供了关键参数的说明和示例代码。
AuroraXHDR
latex插图多图排版
本文介绍了在LaTeX文档中进行多图排版的几种常用方法。首先,subfigure包允许在一个浮动环境中插入多个编号的子图像。其次,subcaption包作为subfigure的升级版,提供了更多功能。此外,minipage环境可以创建小页来排版图片,而tabular环境则适用于将图片按表格形式排列。
LaTeX多图并排排版全攻略:subcaption到minipage的实战技巧
网易美学
latex 四个子图subcaption使用
本文介绍了如何在LaTeX文档中使用subcaption宏包创建包含四个子的图形环境。首先需要在文档的导言区引入subcaption宏包,然后设置figure环境的宽度以适应子图的布局。通过subfigure命令可以创建子图,并为每个子图添加题和指定宽度。
latex 多图 排版
本文介绍了在LaTeX中进行多图排版的最佳实践方法。首先,通过使用`subfigure`或`subcaption`宏包,可以在一个浮动体中放置多个图形,并为每个子图分配独立的标签和标题。其次,调整默认设置以优化视觉效果,例如设置图像的DPI和颜色方案。最后,通过自动化流程减少重复劳动,如批量转换素材文件和应用设计风格模板。
筱筱的竹子
Latex制作PPT模板自动排版,美观好用,简洁大方,适合各种正式学术场合使用
本资源提供的"Latex制作PPT模板自动排版,美观好用,简洁大方,适合各种正式学术场合使用"正是针对这一需求的专业解决方案。下面将详细阐述LaTeX制作PPT模板的相关知识点。
1755
latex 图文并排
LaTeX是专业文档排版的利器,尤其适用于学术论文和书籍。本文介绍了如何在LaTeX文档中实现图片与文本的并排显示,包括使用figure环境和minipage配合subfig/subcaption包的方法。
最年轻的时光
LATEX子图label
本文介绍了如何在LaTeX文档中使用subcaption宏包创建带有独立标签和标题的子图。通过引入宏包并编写特定代码片段,可以实现两张图片并排显示,并为每张子图设置描述性标题和独特标签,以便进行交叉引用。
心航FW
subcaption包插入子图举例
本文介绍了在LaTeX文档中使用subcaption包来插入子图的方法。通过一个具体的例子,展示了如何将一张图片或表格分割成多个独立的部分,并为每个子图添加描述和引用标签。
weixin_48019489