【科研工具】使用LaTeX进行论文排版的快速入门指南

前来驿站充电的小伙伴们,大家好呀!

今天给大家带来的是LaTeX论文排版的速成技巧。

大纲速览
250626214627934.png

0 前言

论文完成之后,使用LaTeX工具可以让自己的手稿变得美观整齐。LaTeX上手很快,核心逻辑是:找模板+改代码=完美的PDF。小站在本文中提供了个人自用的爱斯维尔期刊投稿模板,便于大家快速修改使用。话不多说,让我们一起开始吧。

1 获取LaTeX模板

根据不同的排版需求,我们需要寻找大佬们精心制作的模板。

方法1:Overleaf模板库:

直达链接:https://cn.overleaf.com/latex/templates
1750922214776.png
通过在线LaTeX网站Overleaf,可以下载大多数期刊的模板,如果懒得找,那么这里可以一试。但是可能这里提供的模板可能和期刊官网提供的不同步,所以建议还是去期刊官网下载。

方法2:期刊官网:

一般情况下,期刊模板的位置在

  1. 期刊首页Author Guide或者For Author
  2. 投稿系统的所在位置
  3. 集中统一的模板位置(爱斯维尔;IEEE)
    注意:国外的期刊投稿的模板和最终出版的模板是不一致的。

进入期刊的官网根据以上位置一般都能找到对应的LaTex模板,这里以爱斯唯尔出版社为例,带大家下载期刊论文投稿模板。
(不想看教程的小伙伴可以直接通过百度网盘下载哟,链接: https://pan.baidu.com/s/1uZUGiBSFLVOObJ7dT_fMmg?pwd=b3xv 提取码: b3xv)

第一步,找到爱斯维尔出版社旗下的某一个期刊官网,以《Expert Systems with Applications》为例(https://www.sciencedirect.com/journal/expert-systems-with-applications),找到"Guide for authors"按钮,点击进入。
250626161023908.png
第二步,在新页面左侧目录中找到“Writing and formatting”然后点击“LaTeX”随后点击“LaTeX template”。
250626161455333.png
最后,完成模板文件的下载。
250626161656622.png

2 使用LaTeX进行排版

使用LaTeX有两种方式,一种是本地部署LaTeX,另一种则是线上LaTeX,为了方便初次接触LaTeX的小伙伴,小站用Overleaf(在线LaTeX编辑器)来为大家演示线上使用LaTeX的方法。(https://cn.overleaf.com/)
250626164718139.png

2.1 上传模板

小站在使用LaTeX排版论文中,用的是基于官方模板修改后的LaTeX模板,相较于官方模板会更加简洁易用。因此,下面的演示也是基于此模板,大家可以点击下方链接转存下载。

【自用】爱斯维尔latex投稿模板.zip,链接: https://pan.baidu.com/s/177n13tItLqaKblpV08eFKQ?pwd=mbuq 提取码: mbuq

第一步,通过邮箱注册登录至Overleaf
250626170635639.png
第二步,在完成前面的基本信息填写后,我们来到了下图所示的选择界面,我们单击“创建一个新项目”
250626171530150.png
第三步,选择“上传项目”,将“【自用】爱斯维尔latex投稿模板.zip”压缩包导入进Overleaf
250626172417289.png
看到下图界面即表示上传成功
250626172807851.png

2.2 论文排版

打开上图界面,即代表我们已经可以顺利使用LaTeX了,小站接下来直接告诉大家如何把自己的论文用LaTeX排版。

我们先要了解一个基本知识:在LaTeX中,代码命令以\开头,注释则以%开头。

2.2.1 论文基本信息(投稿期刊、标题、作者、地址、摘要、关键词)

  1. 期刊名称
    第56行代码,仅修改大括号里面的内容
    250626174035187.png
    修改完成之后,点击菜单栏中间位置“重新编译”按钮查看编译效果
    250626174350631.png
    可以在第一页左下角看到期刊名字的变化
    250626174150480.png

  2. 论文标题、作者、地址
    第62-74行代码,仅修改大括号里面的内容
    250626175252231.png
    “重新编译”后,可以在论文第一页的顶部和底部分别看到修改后的信息
    250626175506507.png
    注意:本模板仅适用于所有论文作者的地址都相同的情况,如果论文中作者们的地址不尽相同,需要修改LaTeX代码(可以借助AI来生成)

  3. 论文摘要
    第77-79行代码,仅修改高亮部分的黑色字体内容
    \begin{abstract}以及\end{abstract}这两处代码是LaTeX识别摘要内容的关键代码,不要修改)
    250626175908761.png

  4. 关键词
    第80-82行代码,仅修改高亮部分的黑色字体内容
    (如果需要增加/减少关键词,在相应地位置增加/删除\sep代码并添加关键词)
    250626180406837.png
    “重新编译”后,摘要和关键词可以在论文标题的正下方看到修改后的信息
    250626180726747.png

2.2.2 论文正文内容(标题、正文、参考文献、图片、表格、公式、算法)

  1. 章节标题与章节子标题
    \section{标题内容}表示一级标题
    \subsection{具体内容(英文)}表示二级标题
    \subsubsection{具体内容(英文)}表示三级标题

    依次类推,具体代码以及渲染效果可以参考下图
    250626190345740.png
  2. 正文内容
    在两个section之间便可以输入对应的正文内容,包括文本、图片、表格、公式、算法、参考文献等内容,期间还可以借助代码实现交叉引用。接下来我们一一阐述。
    250626190607748.png
    另外,在LaTeX中,如果要区分两个段落,那么左边的代码编辑区需要在两个段落之间增加一个空行,具体效果可以参考下一节“参考文献引用”中的图片。
  3. 参考文献引用
    我们将目光定位到第90行代码(大家可以根据教程图片做尝试),里面涉及到参考文献的引用,从下图看,我们能发现参考文献引用的代码指令有很多
    250626192040593.png对应的渲染效果如下
    250626192147819.png
    它们的区别如下
命令格式功能描述示例输出使用场景
\cite{key}基本引用格式Fortunato (2010)通用引用
\citep{key}括号引用格式(Newman & Girvan, 2004)强调引用来源
\citet{key}文本嵌入引用Vehlow et al. (2013)作者作为句子成分
\citeauthor{key}仅显示作者名Fortunato强调研究主体
\citeyear{key}仅显示出版年份2010强调时间信息

如果有些期刊要求使用数字引用格式,那么我们可以在第1行代码出,将“authoryear”更改为“numbers”,那么“重新渲染”过后,前三种引用参考文献的代码均会变为数字形式
250626193844966.png

OK,到这一步我们已经清楚引用参考文献的代码就是\cite{}及其衍生代码,那么{}里面的字母与数字怎么来的呢?我们将视线移动到页面的左上角(文件显示区),我们会发现有四个文件,用鼠标点击“ref.bib”文件,我们能够发现三个bib格式的参考文献,见下图
250626194835730.png
获取BibTeX参考文献的方法

  • 学术数据库直导(例如:Google Scholar、IEEE Xplore、ScienceDirect等):搜索文献→点击Cite/Export→BibTeX
  • 文献管理器批量导出(例如:Zotero、Mendeley、Endnote等):文献库勾选目标→文件→ 导出→BibTeX
  • 在线急速转换(例如:DOI转换器https://www.doi2bib.org/):输入DOI号→BibTeX

经过引用的参考文献才会出现在论文末尾的参考文献页
250626201224642.png需要注意的是,这里参考文献的格式通过“model.bst”文件控制,如果需要更改,那么需要额外学习相关的知识
250626201550469.png
4. 插入图片
第105-110行代码,是插入图片的相关代码,具体解释如下

\begin{figure}[htbp]  % 创建浮动图表环境,允许自动调整位置
    \centering        % 居中图表内容
    \includegraphics[width=0.6\columnwidth]{Figure3.1-1.jpg}  % 插入图片并设置宽度为栏宽的60%,如果{}中只有图片名字,须将图片与tex文件置于同一目录
    \caption{The beauty of Munnar, Kerala. (See also Table \ref{tbl1})}  % 添加带交叉引用的标题
    \label{fig1}      % 设置标签用于文档内引用
\end{figure}
代码组件功能说明技术细节
\begin{figure}[htbp]创建浮动图表容器htbp参数控制浮动优先级:
h当前位置
t页面顶部
b页面底部
p单独浮动页
\centering内容水平居中作用于容器内所有内容(图片/标题)
\includegraphics[...]{...}插入外部图像文件关键参数:
width:设置相对宽度
height:设置绝对高度
scale:整体缩放比例
width=0.6\columnwidth设置图像宽度\columnwidth动态获取当前栏宽
保持原始宽高比
\caption{...}添加带编号的标题自动生成"Figure X:"前缀
支持交叉引用(\ref{tbl1}
\label{fig1}创建引用锚点通过\ref{fig1}在文中引用
通过\pageref{fig1}引用页码

此代码对应在文中的渲染以及引用效果如下图
250626203210272.png

  1. 插入表格
    第117-136行代码,是插入表格的相关代码,具体解释如下
\begin{table}[htbp]  % 创建浮动表格环境,自动调整位置
\centering  % 表格内容水平居中
\begin{threeparttable} % 保持标题宽度与表格一致
\captionsetup{justification=raggedright, singlelinecheck=false} % 设置标题左对齐
\caption{This is a test caption. This is a test caption. This is a test
caption. This is a test caption. Use \{table*\} instead of \{table\} if you want a two column spanned table.} % 添加表格标题
\label{tbl1} % 设置表格标签用于交叉引用
\begin{tabular}{@{}cccc@{}} % 创建表格,列格式为4个居中对齐列
\toprule % 顶部水平线
\textbf{Col 1} & \textbf{Col 2} & \textbf{Col 3} & \textbf{Col 4} \\ \midrule % 表头行
12345 & 12345 & 123 & 12345 \\ % 数据行1
12345 & 12345 & 123 & 12345 \\ % 数据行2
12345 & 12345 & 123 & 12345 \\ % 数据行3
12345 & 12345 & 123 & 12345 \\ % 数据行4
12345 & 12345 & 123 & 12345 \\ % 数据行5
\bottomrule % 底部水平线
\end{tabular}
\end{threeparttable} % 结束标题宽度控制
\end{table} % 结束表格环境
代码组件功能说明详细说明
[htbp]位置控制浮动位置优先级:
h当前位置
t页面顶部
b页面底部
p单独浮动页
threeparttable标题宽度控制确保标题宽度与表格宽度相匹配
@{}cccc@{}列格式设置两端不留空白(@{}),4个居中列(cccc)
\toprule/\midrule/\bottomrule专业水平线来自booktabs包的优质表格线
\textbackslash{}\{\}特殊字符转义在标题中显示大括号{}

此代码对应在文中的渲染效果如下图
250626204617173.png

  1. 公式编写
    第142-155行代码,是插入公式及引用公式的相关代码,具体解释如下
% 单行公式环境(可左对齐)
\begin{flalign}  % 创建可左对齐的公式环境
\label{eq:general_formula}  % 设置公式标签用于引用
y_i = \frac{\sum_{\substack{j=1 \\ j \neq i}}^{n} \alpha_{ij} \cdot (1 - \beta_{ij})}{\sum_{i=1}^{n} \sum_{\substack{j=1 \\ j \neq i}}^{n} \alpha_{ij} \cdot (1 - \beta_{ij})},  % 复杂分式公式
\end{flalign}  % 结束公式环境

% 多行公式对齐环境(带星号表示无编号)
\begin{align*}  % 创建多行对齐公式环境(无编号)
\label{eq:multi_line}  % 设置标签(但星号环境不会生成编号)
  a &= b + c \\  % 第一行公式(&= 设置对齐位置)
  &= d \times e   % 第二行公式(延续对齐)
\end{align*}  % 结束对齐环境
代码组件功能说明技术细节
flalign单行左对齐公式环境替代equation环境实现左对齐
fleqn文档选项配合使用
align*多行对齐公式环境(无编号)星号(*)表示不生成公式编号
\label{...}设置引用标签配合\eqref{...}在文中引用
\frac{}{}创建分式结构分子在上,分母在下
\sum求和符号可添加上下限
\substack{...}创建多行下标\\分隔行
&=对齐位置标记多行公式中对齐等号位置

此代码对应在文中的渲染以及引用效果如下图
250626205035604.png

  1. 算法编写
    第164-198行代码,是插入算法的相关代码,具体解释如下
% 算法环境开始
\begin{algorithm}[ht]  % 创建算法浮动体,位置控制参数ht
    \caption{Single-Phase Group Consensus Algorithm with Trust Adjustment}  % 算法标题
    \label{alg:Algorithm1}  % 算法标签用于引用
    \SetKwInOut{Input}{Input}  % 定义输入块标题为"Input"
    \SetKwInOut{Output}{Output}  % 定义输出块标题为"Output"
    \Input{  % 开始输入参数定义
        Individual opinion matrices $ X^h = (x_{ij}^h)_{m \times n} $ for each expert $ h = 1,\dots,b $; \\  % 个体意见矩阵
        Initial trust matrix $ R = (r^{hk})_{b \times b} $; \\  % 初始信任矩阵
        Consensus threshold $ \eta $; \\  % 共识阈值
        Maximum number of iterations $ t_{\max} $.  % 最大迭代次数
    }
    \Output{  % 开始输出结果定义
        Final collective opinion matrix $ X^C $;  % 最终群体意见矩阵
        Ranking of alternatives.  % 备选方案排名
    }
    \Begin{  % 算法主体开始
        \textbf{Step 1:} Compute pairwise similarity among individual opinions to estimate consensus levels. Convert the initial trust matrix into a weighted trust index based on opinion distances.\\  % 步骤1
        \textbf{Step 2:} Derive trust and distrust scores for each expert pair using a predefined transformation mechanism. \\  % 步骤2
        \textbf{Step 3:} Apply a propagation mechanism to account for indirect trust relationships, resulting in a completed trust-distrust matrix.\\  % 步骤3
        \textbf{Step 4:} For each expert, calculate reputation indicators and confidence factors based on trust received and opinion centrality. Normalize these to obtain aggregated weights.\\  % 步骤4
        \textbf{Step 5:} Generate an initial collective opinion matrix by weighted aggregation of expert opinions. Set iteration counter $ t \leftarrow 0 $.\\  % 步骤5
        
        \While{$ t < t_{\max} $} {  % 开始While循环(最大迭代次数控制)
            \textbf{Step 6:} Evaluate group consensus based on the current collective opinion.\\  % 步骤6
            
            \eIf{Consensus degree $ \geq \eta $} {  % If-else条件判断(共识度是否达标)
                \textbf{break} the loop;  % 退出循环
            } {
                \textbf{Step 7:} Identify individuals and alternatives contributing most to disagreement. \\  % 步骤7
                \textbf{Step 8:} Adjust individual opinions iteratively using a feedback rule based on trust scores and proximity to group opinion.\\  % 步骤8
                Update collective opinion matrix and increment $ t \leftarrow t + 1 $.  % 更新矩阵和迭代计数
            }
        }
        \textbf{Step 9:} Calculate final scores for each alternative using the updated collective opinion.\\  % 步骤9
        \textbf{Step 10:} Output the final collective matrix and ranking results.  % 步骤10
    }\textbf{end}  % 算法主体结束
\end{algorithm}  % 算法环境结束
代码组件功能说明技术细节
[ht]位置控制h当前位置,t页面顶部
\SetKwInOut输入输出定义创建专业输入/输出块
\Begin{}算法主体替代传统function的现代语法
\eIf{}If-Else条件带垂直空间优化的条件判断
\\换行控制创建步骤间的适当间距
\textbf{Step X:}步骤标注显式算法流程标记
$ \dots $行内数学公式专业数学符号集成

此代码对应在文中的渲染以及引用效果如下图
250626205329007.png
250626205419228.png

2.3 注意事项

2.3.1 文档类型设置

第1行代码及其注释详细说明了文档类型的设置以及修改的相关问题,包括单双栏变换、参考文献引用样式变换、设置公式左对齐等功能,有需要的小伙伴可以详细阅读

(过来人悄悄告诉你:此处在期刊投稿的时候能帮上大忙)

\documentclass[final,3p,times,authoryear,fleqn]{elsarticle} % 用于文章类型设置;
%final: 指定文档的最终版本;
%3p:单栏显示(双栏用5p);
%authoryear:参考文献引用样式为作者年份(数字用numbers);
%fleqn: 将公式设置为左对齐(而不是默认的居中);
%elsarticle:文档类型为,overleaf已内置,若本地部署latex报错,则需要单独安装elsarticle.cls文件

2.3.2 宏包设置(中文显示问题)

在第7-30行代码处,小站列出了写论文是个人用到的一些宏包的配置,加了%的表示未使用到,可以删除。
250626213157257.png
此外,LaTeX文档原生不支持中文显示,这也意味着整篇文档除了注释其他代码位置不能出现中文,如果报错,那么就要考虑是否有这一问题的影响。当然有细心地小伙伴注意到了在第23-25行代码处被我注释掉的宏包注释里有提示“用于中文支持”,只要把这三行代码启用,LaTeX也可以支持中文的渲染与排版了。

2.3.3 双击PDF文本快速定位LaTeX代码

在检查论文的PDF排版时如果发现一些地方书写有问题,那么可以在PDF双击该位置则可以迅速定位到对应的LaTeX代码。

2.3.4 AI辅助生成LaTeX代码

随着LLM的不断发展,我们也不需要记忆太多复杂的LaTeX命令,在涉及到公式、表格、图片等内容的排版时,学会借助ai来帮助我们完成排版可以节约很多时间。

截图→粘贴→输入命令→发送→调试→完成排版,一气呵成。

AI,让LaTeX不再神秘。

2.3.5 常用LaTeX命令速查

% ===== 基础文档框架 =====  
\documentclass{article}    % 文档类型(article/report/book)  
\usepackage{package}       % 加载宏包  
\title{Title}             % 文档标题  
\author{Author}            % 作者信息  
\date{\today}              % 日期  
\begin{document}          % 文档开始  
\maketitle                 % 生成标题页  
\section{Section}          % 一级标题  
\subsection{Subsection}     % 二级标题  
\tableofcontents           % 目录  
\end{document}             % 文档结束  
% ===== 数学环境 =====  
$ E=mc^2 $                 % 行内公式  
$$ \int_a^b f(x)dx $$     % 无编号公式  
\begin{equation}           % 带编号公式  
  \frac{\partial u}{\partial t} = \nabla^2 u  
\end{equation}  
% ===== 数学符号 =====  
\alpha, \beta, \gamma      % 希腊字母  
\times, \pm, \leq          % 运算符  
\subseteq, \in, \forall    % 逻辑符号  
\mathbf{A}, \mathbb{R}     % 粗体/空心字体  
% ===== 基础表格 =====  
\begin{tabular}{|c|c|c|}   % 列格式:c居中 l左 r右  
  \hline  
  \textbf{Header} & \textbf{Header} & \textbf{Header} \\  
  \hline  
  Cell & Cell & Cell \\  
  \hline  
\end{tabular}  
% ===== 专业表格 =====  
\usepackage{booktabs}      % 加载专业表格宏包  
\begin{tabular}{@{}ccc@{}}  
  \toprule  
  Column1 & Column2 & Column3 \\  
  \midrule  
  Data & Data & Data \\  
  \bottomrule  
\end{tabular}  
\usepackage{graphicx}      % 图片宏包  
\begin{figure}[htbp]  
  \centering  
  \includegraphics[width=0.8\textwidth]{figure.jpg}  
  \caption{Figure description}  
  \label{fig:example}  
\end{figure}  
% 子图排版  
\usepackage{subcaption}  
\begin{figure}  
  \begin{subfigure}{0.45\textwidth}  
    \includegraphics[width=\textwidth]{sub1.jpg}  
    \caption{Subfigure 1}  
  \end{subfigure}  
  \hfill  
  \begin{subfigure}{0.45\textwidth}  
    \includegraphics[width=\textwidth]{sub2.jpg}  
    \caption{Subfigure 2}  
  \end{subfigure}  
\end{figure}  
% ===== 文献引用 ===== 
\usepackage{natbib}        % 文献宏包 
\cite{key}                 % 一般引用
\citep{key}                % 括号引用:(Author, Year)  
\citet{key}                % 文本引用:Author (Year)  
\bibliographystyle{plain}  % 文献样式  
\bibliography{refs}        % 参考文献文件  
% 文献条目示例 (refs.bib)  
@article{key,  
  author  = {Author},  
  title   = {Title},  
  journal = {Journal},  
  year    = {2023},  
  volume  = {1},  
  pages   = {1-10}  
}  

3 尾声

(特别鸣谢:小站的同门为本文提供的LaTeX模板,小站是在其提供的模板上进行修改与完善)

LaTeX的功能十分强大,以上代码仅仅是LaTeX部分功能的基础演示,实际在排版论文中,我们会因为内容篇幅、单双栏、阅读习惯等问题需要不断修改细化LaTeX代码以实现我们的预期。

小站相信,掌握了上述命令代码逻辑的你一定可以用LaTeX顺利完成论文的精美排版,如果你有什么在LaTeX排版上的问题可以在评论区或者后台私信小站,我们一起探讨解决方案。

本期文章所涉及的资源均已上传至小站的资源站(http://sykdyz.ysepan.com/)
250626221508484.png
小伙伴们有需自提哟,让我们下期再见!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值