LaTeX插图怎么插:图片调用方法
介绍在LaTeX中插入图片的标准做法:加载graphicx宏包,用figure环境包住includegraphics,配合图题与标签完成编号和交叉引用,并说明路径、格式与编译失败时的排查要点。
引言段落需要把写作者的困惑直接说出来。很多人第一次写 LaTeX 论文时,公式和符号能查到,但图片插不进去:编译报错“File not found”,图片位置跑到了下一页,或者图号和正文引用对不上。插图和公式输入是两件事,主要用到的是图形环境和文件路径。
这篇文章写给已经会写基本 LaTeX 文档、想把实验图、示意图或截图放进论文或报告的人。读完后,你应该能确定图片该放在哪里、用什么命令引入、怎样加图题和交叉引用,并且知道编译失败时先查哪几处。
下面的命令都以 graphicx 宏包为基础,它是 LaTeX 插图常用的宏包。
怎么在 LaTeX 中插图?一句话结论
直接在正文里写图片命令也能显示,但它不带图题、不带编号,也不参与浮动排版。对于需要编号、引用和图题的正式文档,建议统一用 figure 环境包住 \includegraphics,再配合 \caption 和 \label。
| 你的情况 | 推荐做法 | 原因 |
|---|---|---|
| 论文或报告中的一张正式配图 | figure 环境 + \includegraphics + \caption + \label | 自动编号,可用 \ref 交叉引用,排版位置由 LaTeX 调整 |
| 几张图需要并排显示 | 用 subcaption 宏包的 subfigure 或 subfigure 类环境 | 每张子图可单独加 (a)、(b) 标记,共用一个总图题 |
| 只在文中临时放一个小图标或公式图 | 行内或段落中直接用 \includegraphics | 不需要编号,也不希望浮动到别处 |
| 图片是 SVG 或其他非常规格式 | 先转成 PDF 或 PNG,再引入 | 常用 pdfLaTeX 对 SVG 不直接支持,转换后更省事 |
| 图片很大,超出版心宽度 | 用 width=0.8\textwidth 之类的宽度参数缩放 | 按文字宽度比例缩放,换纸型时仍然合适 |
开始之前:先确认这几点
动手前先确认下面几项,能避免大部分编译错误。
- 图片格式和编译引擎要对应。 用 pdfLaTeX 编译时,PDF、PNG、JPG 可以直接引入;用 XeLaTeX 或 LuaLaTeX 时,同样支持这些格式。老式的 EPS 格式只在旧的 latex 加 dvips 流程中使用,现在较少见。如果手里是 SVG,先导出成 PDF 更稳。
- 图片路径要相对于主文件。
\includegraphics默认从主.tex文件所在目录找图片。如果图放在figures子文件夹里,写成figures/result.pdf,不要写电脑上的绝对路径,否则换一台机器或把项目打包发给别人就会失效。 - 文件名尽量用英文、数字和短横线。 有些环境对中文路径或空格处理不稳定,文件名里带空格时,路径也要整体放在花括号里并保持一致。
- 提前规划图的宽度。 论文的版心宽度通常有限,一张从绘图软件导出的大图直接放进去,可能超出页边。先想好这张图在文中占多宽,再决定参数。
- 确认图片是否已经是最终版本。 图片一旦替换,LaTeX 不会自动更新已经编译好的 PDF,需要重新编译;如果图片有修改,建议保留原文件名或同步更新引用路径,避免新旧版本混用。
在文档中插入一张带图题的图片的步骤
- 把图片文件放进项目目录,建议建一个
figures子文件夹,统一管理所有图片。 - 在导言区确认已经写了
\usepackage{graphicx},它提供\includegraphics命令。 - 在正文需要放图的位置写
\begin{figure}[htbp],方括号里的参数表示浮动位置偏好,h为此处、t为页顶、b为页底、p为单独成页。 - 在
figure环境内写\centering,让图片居中。 - 写
\includegraphics[width=0.8\textwidth]{figures/result.pdf},其中宽度参数表示图宽取正文宽度乘以 0.8,花括号里是相对路径和文件名,扩展名可以省略。 - 写
\caption{实验结果随训练轮数的变化},图题会自动编号,放在图片下方是常见格式。 - 在图题后写
\label{fig:result},正文中需要引用的地方用如图~\ref{fig:result}所示即可得到图号。注意\label要紧跟在\caption之后,否则编号可能对应错误。 - 写
\end{figure}结束环境,然后编译两次,确保交叉引用编号稳定。
做完后逐项核对
编译完成后,不要只看有没有报错,建议逐项检查 PDF 的实际效果。
| 检查项 | 怎么看 | 有问题怎么办 |
|---|---|---|
| 图片是否显示 | PDF 中对应位置有图,没有空白框 | 日志里出现 File not found 时,检查路径和扩展名拼写是否与文件一致 |
| 图片位置是否合适 | 图没有跑到离正文很远的页 | 把参数由 h 改为 htbp,或在图前适当调整段落,必要时用 \clearpage 控制分页 |
| 图的大小 | 图不超出页边,文字清晰 | 调整 width 参数,例如改为 0.6\textwidth 或 \linewidth |
| 图号和引用 | 正文中“图 1”之类的引用与图题编号一致 | 检查 \label 是否写在 \caption 之后,编译两次后再看 |
| 图题内容 | 图题能独立说明图的内容 | 补充坐标含义、单位或图例,不要只写“结果图” |
| 图片清晰度 | 放大 PDF 检查线条和文字 | 用矢量格式导出,或提高位图分辨率,避免只在屏幕上看起来正常 |
如果你的图是用其他软件生成的,建议在绘图软件里先确认字号和线宽,缩放后再检查 PDF。图中的文字太小,缩放后往往看不清。
🎯 哪种做法适合你?
- 写单篇论文,图较少: 用
figure环境加\caption和\label,结构清楚,后期改图号也省事。 - 多张图要对比: 用
subcaption宏包组合子图,并给每张子图加标记,阅读时更直观。 - 习惯图形界面、不熟悉命令: 可以先用桌面或网页编辑器写好结构,再决定是否导出为 LaTeX 源文件。UniDoc 网页编辑器(app.unidoc.top)支持 Word 与 LaTeX 之间的往返编辑,适合在两种格式间切换,但具体的图片插入效果仍建议编译后核对。
❓ 常见问题(FAQ)
1. 编译时提示找不到图片,怎么办?
先看报错里的文件名是否与目录中的文件完全一致,包括大小写和扩展名。然后确认路径是相对于主 .tex 文件写的,子文件夹要写进路径里,例如 figures/fig1.pdf。
2. 图片插入后位置一直不对,能强制固定吗?
可以把浮动参数改为 [H],它需要 float 宏包支持,会严格按照代码位置放图,但容易留下较大空白。通常更推荐保留 [htbp],在必要时调整前后段落或使用 \clearpage 控制分页。
3. 图片能不能不带编号,只作为插图显示?
可以。直接用 \includegraphics 放在段落中,不套 figure 环境,就不会有图号和图题。如果只是放一个小图标,这样更简单。
4. 为什么图放大后模糊?
多半是原图是低分辨率位图。建议改用 PDF 或 EPS 等矢量格式导出,或者换用更高分辨率的 PNG。截图通常分辨率不够,需要重新导出。
5. 插入的图片和公式可以用同一个命令吗?
不可以。公式通过数学环境输入,图片通过 \includegraphics 引入,两者的编号、排版和引用方式也不同。混在一起时,建议公式仍用数学环境,图片统一放进 figure 环境。
📝 总结
在 LaTeX 中插图,核心是加载 graphicx 宏包,用 figure 环境包住 \includegraphics,并配合 \caption 和 \label 完成编号与引用。路径相对主文件写、格式与编译引擎对应、编译后逐项检查 PDF,基本能解决大多数插图问题。


