文 | 大核桃  早稻田与武大联合培养计算机硕士

这是一篇Latex论文排版教程,推荐大家收藏之后再看!

为什么说Latex是“不得不会”呢?

因为现在的期刊论文,尤其是计算机类的,越来越多是有统一格式要求的,并且有模板提供,这个模板就是以.tex结尾的文件包。Latex相对于word对数学公式更友好,格式更漂亮规范,处处体现了科研人员的严谨与认真。开始使用Latex到爱上Latex的过程,形容一下,就像“榴莲宝们”第一次吃到榴莲之后欲罢不能的全过程。

我是因为上个学期一门专业课的作业才“不得不”强迫自己学习Latex的,在之前本科时用过Adobe Indesign(一个设计类排版软件)。硬着头皮开了个头,排完一篇之后发现一点儿也不抗拒了,相反还很开心怎么回事。多读点书咯,总会有用的,这门课我拿了A+,也是上个学期几门课里的唯一一个A plus,大概是晚期计算机处女座“抠细节”的觉悟促成的。

不仅是计算机的研究生应该要具备一下Latex技能,别的专业多多少少也是学了没毛病的,我始终相信,编程是和英语一样存在的一门语言,是人与机器对话的语言,它并没有想象中的难以接受,我在完成了从“设计排版”到“程序排版”的转变之后,强烈安利大家打开这个新世界的大门,尤其是在语言方面有天赋的宝宝,很有可能在机器语言方面也同理可得噢!

关于Latex的安装,这里我用到了Texstudio,大家戳下面的链接按照步骤进行下载:

CSDN:最简单傻瓜式的 Latex+Texstudio 安装教学

https://blog.csdn.net/qq_33826564/article/details/81490478

Latex入门级:下载官方模板,在Texstudio/winEdit里或者直接 overleaf.com网页版里进行排版,前者只针对于研究生以上博士等,但是安装就好几个G 了对内存十分不友好,overleaf网页版对大多数人更友好,推荐使用。其中公式可以用latex在线公式编辑器搞定。

Latex中级:熟练掌握Latex的常用语法。这里放上一个知乎的链接:

https://www.zhihu.com/question/268569440/answer/343851257

Latex高级:吃透Latex,可以用Latex替代word进行日常文档编辑。

一些符号的表示:

数学模式符号$、注释符%、上标^、分组{ }、宏命令\。

~是带子、#用在宏定义中、&用于表格对齐、_表示数学模式的下标。

注:要在正文部分用到这些符号,大部分是在前面加\,只有个别例外。

Texstudio操作快捷键:

https://blog.csdn.net/sdujava2011/article/details/61616191

惭愧地说,我还在初级向中级进发中。这次排版我照着IEEE官网的模板文件现学现卖用到了如下代码:

1. 首行缩进

\usepackage{indentfirst}
\setlength{\parindent}{2em}
%然后在需要缩进的文段前添加
\indent

2. 公式

Latex公式在线编辑器你值得涌有!

网址:

http://latex.codecogs.com/eqneditor/editor.php

可以预览,然后直接复制对话框的代码就可以了,非常方便,强烈安利!

1)这里注意一下在文中数字的输入:例:(${x}'$,${z}'$)  效果如图:

2)公式样例:(之前别忘了插入库\usepackage{algorithm, algorithmic})

\begin{equation}
G_{j}^{\phi}(x)=\frac{1}{C_{j}H_{j}W_{j}}\sum_{h=1}^{H_{j}}\sum_{w=1}^{W_{j}}\phi_{j}(x)_{h,w,c}\phi _{j}(x)_{h,w,c'}
\end{equation}

效果如图:

3)我碰到了公式过长的情况,需要换行表达,于是改了一下:

\begin{equation}
\begin{split}
\underset{G}{min}\underset{D}{max}L(D,G)=\AE_{x\sim p_{x\mid y}}\left[ logD(x\mid y) \right ]\\
+\AE _{z\sim p_{z}}\left [ log(1-D(G(z\mid y))) \right ]
\end{split}
\end{equation}

效果如图:

注:需要对齐的长公式可以用split 环境,它本身不能单独使用,因此也称作次环境,必须包含在equation或其它数学环境内。split 环境用\\和&来分行和设置对齐位置。

3. 图片

别忘了开头插入库

(\usepackage{graphicx})

1)插入单张图片(从模板提取代码):

\begin{figure}[!t]
\centering
\includegraphics[width=2.5in]{luna.jpg}
\caption{this is a figure demo}
\label{fig_sim}
\end{figure}

效果如图:

2)插入多图并排(记得先设置一下库):

\ifCLASSOPTIONcompsoc
\usepackage[caption=false,font=normalsize,labelfon
t=sf,textfont=sf]{subfig}
\else
\usepackage[caption=false,font=footnotesize]{subfig}
\fi

然后使用代码:
\begin{figure*}[!t]
\centering
\subfloat[]{\includegraphics[width=2.5in]{luna.jpg}%
\label{fig_first_case}}
\hfil
\subfloat[]{\includegraphics[width=2.5in]{luna.jpg}%
\label{fig_second_case}}
\hfil
\subfloat[]{\includegraphics[width=2.5in]{luna.jpg}%
\label{fig_third_case}}
\hfil
\subfloat[]{\includegraphics[width=2.5in]{luna.jpg}%
\label{fig_forth_case}}
\caption{Simulation results for the network.}
\label{fig_sim}
\end{figure*}

效果如图:

4. 表格

1)模板给出表格命令:

\begin{table}[!t]
\renewcommand{\arraystretch}{1.3}
\caption{An Example of a Table}
\label{table_example}
\centering
\begin{tabular}{|c|c|}
\hline
One & Two\\
\hline
Three & Four\\
\hline
\end{tabular}
\end{table}

效果如图:

2)然而老板的要求不长这样,所以又爬了一下代码琢磨改了一下,三行线表格代码如下:

\begin{table}[!t]
\renewcommand{\arraystretch}{1.3}
\caption{your description on table}
\label{table_example}
\centering
\begin{tabular}{cccc}
\hline
\bfseries Do & \bfseries You & \bfseries Love & \bfseries Me\\
\hline
Yestoday & Yes & Yes & Yes\\
Today & Of Course & Of Course & Of Course\\
Tomorrow & Definitely Yes & Definitely Yes & Definitely Yes\\
\hline
\end{tabular}
\end{table}

效果如图:

3)表格真是整得人头秃啊,更复杂的表格代码请移步:

http://blog.sina.com.cn/s/blog_57235cc70100jnqu.html

5. 参考文献

1)不使用BibTex的方法:

https://blog.csdn.net/GarfieldEr007/article/details/51628565

2)使用BibTex的方法:

https://blog.csdn.net/z_Ramsey/article/details/81986447

3)我使用的IEEE模板加BibTex方法:

https://blog.csdn.net/qysh123/article/details/8765772?tdsourcetag=s_pctim_aiomsg

期刊流程走了一遍,十分心lui了。以上的代码并不是拿来就直接可以用的,可能之前要引入一些库,就像文中给出的图片库一样。代码都是需要动态调整的,不同的期刊给出的latex模板并不尽然相同,需要仔细研读它给出的导航PDF,谁也不喜欢看说明书,还是全英文的,这个时候ctrl+F搜索关键字很好用,如想知道表格排版代码要求的位置就再搜索栏里输入“table”,然后上下翻动,可以很快定位到对应的位置。

不建议新手一上来就自己freestyle,找个专业的模板跟着走一遍流程会比较快上手,或者有时间看一下刘海洋老师的《LATEX入门》

我从安装Texstudio开始到彻底完成整个论文的排版,用了三天的时间,然后我问了一个博士师兄,对方说“正常我用Latex排一篇论文一天不到吧”,扎心了铁子。

然而更扎心的还有老板一开始派活是这么说的:

半天!半天!半天!

很多时候我们接受差距的存在,但不能满足于差距一直存在。

我们不能阻挡自己任人鱼肉的命运,但可以选择做最好的“鱼肉”。

这么说有种假笑girl的感觉,但是神户牛肉怎么吃,厨师肯定是按照它的纹路来的,不然就是浪费了这块“顶级”的肉。总有一天我肯定可以用Latex花半天的时间排自己的期刊论文。这大概就是硕士期间仓鼠静不懈努力的目标了——做一块有相对自由的“神户牛肉”。

无觉悟,不科研!

今日份福利:在公众号【仓鼠静的瓜子展览馆】后台回复【4】即可抱走如下Latex排版教程

//end

END

本文转载自公众号「仓鼠静的瓜子展览馆」。号主是早稻田大学和武汉大学的联合培养硕士,定期分享学习资料、学霸养成计划等内容,欢迎大家关注!

妈蛋,这玩意还真不得不会!相关推荐

  1. 记一次有意思的种树比赛

    记一次有意思的种树比赛 在招聘群里有位老哥发了个网址http://geek.qq.com/tree/,发现挺好玩,别说这玩意还真让人极其上头哈哈,这次种树实际上就是类似于一个闯关游戏,种树种到一定数量 ...

  2. 也谈TDD,以及三层架构、设计模式、ORM……没有免费的午餐,选择了,必付出代价...

    想在园子里写点东西已经很久了,但一直没有落笔,忙着做 一起帮 的开发直播,还有些软文做推广,还要做奶爸带孩子,还要--好吧,我承认,真正的原因是: 太特么的难写了! 但再难写也要写啊,要等到" ...

  3. 使用genext2fs制作ramdisk

    linux 默认并没有自带这个工具,需要下载,项目地址:http://sourceforge.net/projects/genext2fs/files/genext2fs/  最新版为genext2f ...

  4. 微信支付官方SDK V3 .NET版的坑

    但是支付成功后却不能正确的执行支付结果js回调函数.看看其页面的点击事件是放在asp:Button上面的.我们知道在asp.net webform中,按钮的点击是有页面回调后台的.也就是其实点击了之后 ...

  5. 机器学习入门:多变量线性回归

    摘要:给大家简单介绍了多变量线性回归,还附赠在处理梯度下降过程中通用的两个小技巧. 本文分享自华为云社区<[跟着小Mi一起机器学习吧!]多变量线性回归(一)>,原文作者:Skytier. ...

  6. MS-SQL的智能脚本智能提示失效丢失

    今天打开SQL编写的时候,发现智能提示没有反应,发现离开这玩意还真不习惯,然后就是想办法怎么把它恢复. 首先是在工具-选项,看下基础设置是否还在(如下图).发现自己的设置没有修改,IntelliSen ...

  7. 我从非科班转到图像算法工程师(图像识别、机器学习、深度学习)(3个月)的经历

    我从非科班转到算法工程师3个月的经历 附录1:From 2016: Why Deep Learning Is Suddenly Changing Your Life 附录2:深度学习如何入门? 附录3 ...

  8. TIPC 透明通信协议

    说实话,接触TIPC也不是一天两天了,在TSP的时候就和它天天打交道.今天好好来研究一下. TIPC sourceforge site:http://tipc.sourceforge.net/inde ...

  9. 北冥乘海生:996其实没什么卵用

    作者:北冥乘海生,公众号 & 知乎专栏:计算广告 996一词,是某巨头的一个中层提出来的,最初只是个忽悠老板的口号,哪知道如今应者云集,简直成了创业精神的代名词.007一词,则是我提出来的(& ...

最新文章

  1. iOS开发之网络编程--使用NSURLConnection实现大文件断点续传下载
  2. 屏幕坏点怎么产生的_修复液晶屏幕坏点的妙招
  3. 程序语言的概念知识笔记
  4. Java编程中程序员会遇到的一些感性烦恼,你有遇到吗?
  5. java网站短信接口_网云JAVA短信接口API
  6. 推荐系统的变与不变:冷启动、召回排序、长期生态与目标拆解
  7. 5G网络什么时候普及,5G手机可以用4G的手机卡吗,5G和4G什么区别
  8. 洛谷2501 BZOJ1801中国象棋题解
  9. matlab闭环直流调速系统实验,实验三双闭环直流调速系统MATLAB仿真.doc
  10. Java - springboot中md5加解密工具类
  11. 【运筹学】线性规划 单纯形法原理 ( 构造初始可行基 | 基变换 | 最优性检验 | 解的判别 | 检验数 | ( 唯一 / 无穷多 ) 最优解判别定理 | 无界解判别定理 )
  12. antd系列之Select
  13. java idea导入ecli项目
  14. android 开发短信接收器
  15. 传奇手游服务器搭建_如何架设一个传奇手游?需要那些东西?
  16. AlwaysOn3节点集群方案windows2012+sqlserver2012
  17. NOI-1.2(04) 填空:类型转换1
  18. Python计算机视觉——SIFT描述子
  19. RSA加密算法(公钥+私钥加密)
  20. Java的垃圾回收机制详解——从入门到出土,学不会接着来砍我!

热门文章

  1. 实战 | Kaggle竞赛:华盛顿特区首都自行车租赁预测
  2. MStar平台编译环境安装
  3. 互联网晚报 | 1月6日 星期四 | 中国移动正式回归A股;京东成央视春晚独家互动合作伙伴;钉钉进军制造业...
  4. GeneXus3 筛选条件
  5. 餐饮店选址要考虑竞品分布,用户画像等
  6. CISCO交换机配置命令及释义
  7. 51单片机-串口通信
  8. 电脑不显示我的计算机管理,固态硬盘不显示在我的电脑怎么办
  9. Linux测试工具httpd-tools
  10. 陈阳,她离开微软,投身开源10年!只管热爱,无问西东