The article body for this language is not available yet; showing the other language.
Blog & updates从 DrawFig 一键导出 TikZ 代码开始,系统讲解 LaTeX 图表的进阶排版技巧——包括图题、交叉引用、子图布局、字体统一和期刊模板适配,让你的论文插图真正达到发表标准。
cm 或 pt,和 LaTeX 排版单位一致,避免图形缩放失真。.tex 文件(如 fig-graph.tex),再用 \input{} 引用,便于复用和版本管理:
\begin{figure}[htbp]
\centering
\input{figures/fig-graph.tex}
\caption{图的标题写这里}
\label{fig:graph}
\end{figure}
\caption 规范写法% ACM / Springer 风格
\usepackage[labelfont=bf, textfont=it]{caption}
% IEEE 风格(通常用 IEEEtran 类自带样式,无需额外设置)
\cref{} 代替 \ref{},自动补全"图""表"等前缀:
\usepackage{cleveref}
% 正文引用时
如图~\cref{fig:graph} 所示,算法流程分为三个阶段……
% 输出:如图 1 所示……
给标签取有意义的名字,推荐格式:fig:功能描述,如 fig:network-topology、fig:algorithm-flow,避免写成 fig1、fig2。
subfigure vs subcaptionsubcaption 包\usepackage{subcaption}
\begin{figure}[htbp]
\centering
\begin{subfigure}[b]{0.48\textwidth}
\centering
\input{figures/fig-undirected.tex}
\caption{无向图}
\label{fig:undirected}
\end{subfigure}
\hfill
\begin{subfigure}[b]{0.48\textwidth}
\centering
\input{figures/fig-directed.tex}
\caption{有向图}
\label{fig:directed}
\end{subfigure}
\caption{两种图类型的对比示意}
\label{fig:graph-comparison}
\end{figure}
关键参数说明:
[b]{0.48\textwidth}:子图宽度设为正文宽度的 48%,两图之间用 \hfill 自动填充间距,比硬写 \quad 更灵活。figure* 环境,子图宽度改为 0.48\linewidth。.tex 文件,再用上述方法组合——比在一个画布上挤多张图更好维护。
\usepackage{times} 或 \usepackage{newtxtext}),节点文字可能不跟着变。
解决方法: 在 TikZ 图形的全局样式中设置字体继承:
% 在导言区或图形环境前添加
\tikzset{
every node/.style={font=\normalfont\small}
}
或者更精细地为不同节点类型设置:
\tikzset{
vertex/.style={
circle, draw, minimum size=20pt,
font=\small\sffamily % 和标题字体族一致
},
edge label/.style={
font=\footnotesize
}
}
检验方式: 编译后放大 PDF 查看,图中节点文字与正文段落文字的字体是否视觉上一致。如有差异,说明字体设置还需要调整。
\columnwidth(约 88mm),DrawFig 导出时建议将画布宽度控制在 80mm 以内,留出边距。
插入时指定宽度:
\begin{figure}[!t]
\centering
\resizebox{\columnwidth}{!}{\input{figures/fig-topology.tex}}
\caption{网络拓扑示意图}
\label{fig:topology}
\end{figure}
\resizebox{\columnwidth}{!}{...} 会按列宽等比缩放,适应不同模板,比硬写 scale=0.8 更通用。
\begin{figure*}[!t]
\centering
\input{figures/fig-system-overview.tex}
\caption{系统整体架构图}
\label{fig:system}
\end{figure*}
figure* 环境会让图横跨双栏,适合系统架构图、完整算法流程图等宽图。注意:跨栏图只能出现在页面顶部或底部,[!t] 或 [!b] 参数是必须的。
% LNCS 通常自带 caption 配置,不需要额外设置
% 但图宽度需要遵守单栏 \textwidth 约 122mm 的限制
\begin{figure}[htbp]
\centering
\includegraphics[width=0.9\textwidth]{figures/fig-graph.pdf}
\caption{...}
\end{figure}
对于 LNCS,DrawFig 建议的工作流是:导出 TikZ → 编译为独立 PDF → 用 \includegraphics 插入,而不是直接 \input TikZ 代码。这样可以避免宏包冲突,也更稳定。
独立编译命令(使用 standalone 类):
\documentclass[tikz,border=2mm]{standalone}
\usepackage{tikz}
\begin{document}
\input{fig-graph.tex}
\end{document}
编译后得到 fig-graph.pdf,直接插入主文档即可。
| 问题 | 原因 | 解决方法 |
|---|---|---|
| 图形位置不对,总是跑到页尾 | LaTeX 浮动体算法 | 加 [!h] 参数,或在导言区 \usepackage{float} 后用 [H] |
| 节点文字溢出边框 | 节点 minimum width 不够 |
在 TikZ 样式中增大 minimum width 或 text width |
导入 TikZ 后编译报错 Undefined control sequence |
缺少 TikZ 库 | 在导言区添加所需库,如 \usetikzlibrary{arrows.meta, positioning} |
| 图片过大,编译超慢 | 大型 TikZ 图形运算量大 | 用 standalone 独立编译为 PDF,再用 \includegraphics 插入 |
| 子图标签 (a)(b) 格式不符合期刊要求 | 期刊风格不同 | 用 subcaption 包的 \subcaptionbox 命令,并配置标签格式 |
.tex 文件 + \input 引用subcaption 包 + 合理的宽度计算