LaTeX 写学术论文的一些小技巧

时间:2021-07-14 19:51:52

此文用于分享一些用 LaTeX 写学术论文的一些小技巧,并会不断更新中 。。。

笔者安装的是 CTeX 和 TeXStudio 软件,这两个软件配合很好使用。尤其是 TeXStudio 使用起来很方便,撰写论文是效率很高。

字体

论文中正文都为模板默认的字体,但是其中也有一些特殊。

TeX 显示 格式
\emph{} text 强调
\textbf{} text 加粗
\mathbf{} ABCD 公式加粗
\mathrm{} ABCD 字母->文本
\mathbb{} ABCD 空心符号
\mathcal{} ABCD 花体符号
{\color{颜色} } ABCD 彩色字体
\hat{} a^ 三角
\bar{} a¯ 横线
\dot{} a˙
\vec{} a⃗  向量

公式编号

在论文中,公式一般都需要编号,latex 已经能自动对论文进行编号,给作者提供了方便。而一些公式不需要显示编号,仅需要在公式的每一行最后(换行之前),加入 \nonumber\notag

\begin{equation}
A_{t+1} = \arg\min_A \ \mathcal{L}(A,E_t,\Delta\tau_t,W_t,b_t), \nonumber
\end{equation}

LaTeX 写学术论文的一些小技巧
有时候,一个多行的公式,其实只需要一个编号。如果使用 align环境,则会在每一行出现一个编号,又需要手动加\nonumber去除编号。其实,只需要如下

\begin{equation}
\begin{aligned} \label{eq:***}
...
\end{aligned}
\end{equation}

LaTeX 写学术论文的一些小技巧
如此,公式只有一个编号,而且其位置也在垂直居中的位置,而不是最后一行。

另外,有时候确实需要多行公式,每行一个编号,但是不需要对齐,默认居中即可,使用如下

\begin{equation}
\begin{gathered}
...
\end{gathered}
\end{equation}

a2=b2+2wk+1=wk+ηΔwf(x)=f(x0)0!+f(x0)1!(xx0)+f′′(x0)2!(xx0)2++f(n)(x0)n!(xx0)n+

表格

表格在论文中很常用。一般的表格很容易使用。但是其中一些自定的格式,跨行、跨列、列宽等。可能需要额外的工具包\usepackage{multirow}\usepackage{booktabs}

\begin{table}[htbp]
\caption{Title of table} \label{tab:table}
\centering
\addtolength{\tabcolsep}{-0mm} % 控制列间距
\begin{tabular}{ccccc}
\toprule[0.75pt] % package booktabs
\multicolumn{4}{c}{table head} \\
\midrule[0.5pt] % package booktabs
\multirow{4}{*}{text} & 1 & 2 & 3 & 4 \\ % package multirow
& 5 & 6 & 7 & 8 \\
\cmidrule[0.5pt]{2-4} % package booktabs
& 9 & 10 & 11 & 12 \\
& 13 & 14 & 15 & 16 \\
\bottomrule[0.75pt] % package booktabs
\end{tabular}
\end{table}

LaTeX 写学术论文的一些小技巧

图片格式

latex 最初是只支持 eps 格式的矢量图片,但是目前已经发展得比较完善,可以兼容许多格式,jpg, png, pdf 等格式的图片均可,可惜需要 pdflatex 编译才能完成。但是 pdflatex 编译时又不支持 eps 格式的矢量图。其实,只要在导言区加入

\usepackage{epstopdf}
\usepackage{epsfig}

这样一来,pdflatex 可以编译所有格式的图片导入,而且即使是 eps 图,也会被转化为 ***-eps-converted-to.pdf,然后在导入论文中显示。

超链接·书签

latex 编译之后,默认是没有书签的,而且一些引用(公式、图片、参考文献)都只是数字,并没有超链接。但是,有时候有超链接的话,查看论文内容比较方便,这也是电子版的论文查阅的优势,相比于纸质的论文。
使用如下包

\usepackage{color}
\usepackage{hyperref}
\hypersetup{colorlinks, bookmarks, unicode} $ 彩色的链接显示,带书签

默认的引用颜色,图片,公式都为红色;参考文献为绿色。
LaTeX 写学术论文的一些小技巧LaTeX 写学术论文的一些小技巧LaTeX 写学术论文的一些小技巧LaTeX 写学术论文的一些小技巧

算法

学术论文中有时需要用一个表格,总结算法的步骤,所以需要在 *.tex 文件 导言区加入

\usepackage{algorithm}
\usepackage{algorithmic}
\renewcommand{\algorithmicrequire}{ \textbf{Input:}} % Input 代替 Require
\renewcommand{\algorithmicensure}{ \textbf{Initialize:}} % Initialize 代替 Ensure
\renewcommand{\algorithmicreturn}{ \textbf{Output:}} % Output 代替 Return

而在正文中,则使用如下语句定义一个算法表格

\begin{algorithm}
\caption{Title of the Algorithm}
\label{algo:ref}
\begin{algorithmic}[1]
\REQUIRE some words. % this command shows "Input"
\ENSURE ~\\ % this command shows "Initialized"
some text goes here ...\\
\WHILE {\emph{not converged}}
\STATE ... \\ % line number at left side
\ENDWHILE
\RETURN this is the lat part. % this command shows "Output"
\end{algorithmic}
\end{algorithm}

LaTeX 写学术论文的一些小技巧

参考文献

参考文献导入使用 bibtex 进行编译。首先需要到学术网站上,比如 Google Scholar,IEEE,Springer,Elsevier,ScienceDirect,Wiley,Web of Science 等,下载对应论文的引用(一般有按钮直接导出参考文献export citation),可以选择不同的格式(比如 Bibtex,Endnote,NoteExpress,RefMan,RefWorks 等)。
LaTeX 写学术论文的一些小技巧
LaTeX 写学术论文的一些小技巧
LaTeX 写学术论文的一些小技巧
我最喜欢用 bibtex,因为可以直接复制引用的元数据文本,然后直接粘贴到 *.bib 文件中,或是导入到 NoteExpress 或 EndNote 参考文献维护软件中,进行管理。
LaTeX 写学术论文的一些小技巧
LaTeX 写学术论文的一些小技巧
当一篇论文需要几十篇的引用时,如果再用手动一个一个添加引用到 *.bib 文件中的方式就不方便了;尤其在修改论文是需要删除其中某一篇引用,或是需要删除其中重复添加的引用(会引起编译错误)的情况下,操作会很麻烦。所以,建议先将论文的引用全部导入到 NoteExpress 或 EndNote 中,统一进行管理(可以排序,避免冲重复添加),之后再一起导出参考文献引用数据到 *.bib 文件中,进行编译。
LaTeX 写学术论文的一些小技巧
这样做的好处是,可以在软件(比如 NoteExpress)中直接找到需要的引用标识 \cite{},而不再需要手动查找。
LaTeX 写学术论文的一些小技巧
复制 bib 引用之后,在 LaTeX 编辑器中直接粘贴,即可完成参考文献的引用。
LaTeX 写学术论文的一些小技巧

另外,参考文献在论文的最后一页通常是不满页的,所以需要平衡一下左右两栏(一般论文为双栏格式)的参考文献数量,使用工具包

\usepackage{balance}

在 *.tex 中定义参考文献的部分,加入

\balance    % balance the reference layout in last page manually
\bibliographystyle{spmpsci} % style of reference
\bibliography{reference} % name your bibtex file

用 LaTeX 进行论文的批注

Word 可以很方便地进行文章的批注,特别是多人写作修改论文时,其功能非常方便。而 LaTeX 貌似只能在 pdf 上手动添加批注,并没有 Word 便捷。其实已经开发好的宏包 changes 供我们使用(网上可以直接下载,系统的 tex 安装包也自带)。Changes 包可以自定义一些添加批注(增、删、改)的格式,如果对 latex 的熟练度要求也不高,可以推荐使用。

%% if you want to remove all changes commands in tex file, use "delcmdchanges.bash [-i] [-h] <inputfile> <outputfile>"
\usepackage[draft]{changes} % draft or final
\definechangesauthor[name={Xue Shengke}, color=orange]{XSK}

\begin{document}
...
This is \added[XSK]{new} text.
This is \deleted[XSK]{unnecessary}text.
This is \replaced[XSK]{normal}{bad} text.

\listofchanges
...
\end{document}

如果是 draft 格式,会显示批注样式;但是如果是 final 格式,会接受批注的所有修改。
draft
LaTeX 写学术论文的一些小技巧
final
LaTeX 写学术论文的一些小技巧

\listofchanges 会生成一个表格,说明某个作者,修改了多少处(需要编译两次,显示才正常)。
LaTeX 写学术论文的一些小技巧

如果到了论文最后定稿的阶段,想把 changes 的命令全部从 tex 源文件中移除,只要在命令行使用

delcmdchanges.bash [-i] [-h] <inputfile> <outputfile>

即可生成删去所有批注命令的 tex 文件。


\begin{document}
...
This is new text.
This is unnecessary text.
This is normal text.
...
\end{document}

未完待续 。。。