-
Notifications
You must be signed in to change notification settings - Fork 15
/
shu-thesis.tex
636 lines (576 loc) · 27 KB
/
shu-thesis.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
% UTF-8 encoding
% Compile with latex+dvipdfmx, pdflatex, xelatex or lualatex
% pdflatex is recommanded
% This template is released under BSD 2-Clause license.
\documentclass[UTF8]{ctexart}
%====================================================
% 颜色和自定义颜色
\usepackage{xcolor}
\definecolor{hyperref-green}{RGB}{0,150,0}
\definecolor{hyperref-red}{RGB}{200,0,0}
\definecolor{hyperref-blue}{RGB}{0,0,200}
%====================================================
%====================================================
% 超链接
\usepackage[
pagebackref=true,
citecolor=hyperref-blue,
linkcolor=hyperref-red,
urlcolor=hyperref-blue,
menucolor=black,
letterpaper=true,
breaklinks=true,
bookmarks=true,
colorlinks
]{hyperref}
\usepackage{bibentry}
%====================================================
%====================================================
%导入外部pdf
\usepackage{pdfpages} % includepdf
%====================================================
%====================================================
% 公式和数学标识,算法流程图
\usepackage{amsmath}
\usepackage{bm} %%某些矢量需要加粗字符,除mathbf外的另一种方式%By Kuber
\usepackage{amssymb}
\usepackage{pifont}
\usepackage{listings} %插入代码
\usepackage[ruled]{algorithm2e} %算法和伪代码
\newcommand{\cmark}{\checkmark}%
\newcommand{\xmark}{\ding{55}}%
\usepackage{xcolor} % math color
\usepackage{diagbox}
\numberwithin{equation}{section} % 公式按章节编号
\numberwithin{table}{section} % 公式按章节编号
% 声明argmin和argmax运算符
\newcommand{\argmin}{\mathop{\mathrm{argmin}}\limits}
\newcommand{\argmax}{\mathop{\mathrm{argmax}}\limits}
\usepackage{amsfonts}
%====================================================
%====================================================
% 插入图表和图表描述
\usepackage{graphicx, caption, subfigure, float}
\DeclareCaptionFormat{myformat}{\fontsize{8}{8}\selectfont#1#2#3}
\captionsetup{format=myformat}
\captionsetup{margin=2cm}
\captionsetup{justification=centering}
\usepackage{overpic}
% 绘图
\usepackage{pgfplots}
%====================================================
%====================================================
% 其他格式,和样式
% 将章节标号转为中文
\usepackage{zhnumber}
%% geometry
\usepackage{geometry}
\geometry{left=3.17cm,right=3.17cm,top=3.0cm,bottom=3.0cm} % 页边距
% 页眉相关的设置
\usepackage{fancyhdr}
\fancyhf{} % 清除默认页眉
\pagestyle{fancy}
\lhead{上海大学硕士学位论文} % 添加右侧页眉
\rhead{KAI ZHAO: \url{http://kaizhao.net}} % 右侧页眉,写你自己的论文的时候请去掉本行。
\cfoot{\thepage} % 添加页脚页码
%% 设置章节格式
\CTEXsetup[name={第, 章}]{section}
\CTEXsetup[number={\chinese{section}}]{section}
\CTEXsetup[format+={\zihao{-2}}]{section} % 大章节字体: 小二
\CTEXsetup[beforeskip={17pt}]{section} % 标题与上面文本的间距%By Kuber
\CTEXsetup[afterskip={16.5pt}]{section} % 标题与下面文本的间距%By Kuber
\CTEXsetup[format+={\zihao{3}}]{subsection} % 小章节字体: 三号
\CTEXsetup[beforeskip={13pt}]{subsection}%同上,间距可调
\CTEXsetup[afterskip={13pt}]{subsection}%同上,间距可调
\CTEXsetup[beforeskip={13pt}]{subsubsection}%同上,间距可调
\CTEXsetup[afterskip={13pt}]{subsubsection}%同上,间距可调
\CTEXsetup[format+={\zihao{3}}]{subsection} % 小章节字体: 三号
\CTEXsetup[format+={\zihao{-4}}]{subsubsection}
% 图表按章节编号
\usepackage{chngcntr}
\counterwithin{figure}{section}
%====================================================
%====================================================
%常用的命令
\newcommand{\red}[1]{{\textcolor{red}{#1}}}%
%====================================================
%====================================================
% 开始正文
\begin{document}
\zihao{-4} %
\linespread{1.6} \selectfont % 调整全文为1.6倍line间距,非常接近word版本1.5行间距%By Kuber
% 导入封面内容,注意这个地方的页码请根据你的实际情况设置,
% 我的cover.pdf有6页,所以是插入1-6页
\includepdf[pages={1-7}]{cover.pdf}
\pagenumbering{Roman} % 目录之前的内容(包括目录)页码使用罗马数字
\setcounter{page}{7} % LaTeX的起始页码
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 此处请大家务必注意!!
% 由于本人能力/精力有限,并没有设计毕业论文‘目录之前的所有内容’
% 包括‘封面,中/英文摘要,原创说明,授权说明’等内容,
% 这些版面的设计也并非LaTeX的长处。
% 因此这部分需要你使用cover.docx编写,然后导出cover.pdf,
% 最后在LaTeX中·includepdf[1-X]{cover.pdf}。
% 注意,上面的页码请根据你得到的pdf的实际页码填写。
% 还需注意,为了让word的页码和LaTex的页码连续(LaTex页码默认从1开始),
% 需要为LaTex手动设置起始页码:
% \setcounter{page}{X} % LaTeX的起始页码
% 这里的X要根据你自己的cover.docx页数而定。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 由于目录(TOC: table of contents)也会被hyperref作为超链接,因此颜色会被设置为和图表超链接一样的红色,红色的目录不好看。
% 这里单独把TOC的颜色设置为黑色。
{\hypersetup{linkcolor=black}
\tableofcontents}
\pagebreak
\section{绪论}
\pagenumbering{arabic} % 正文开始,页码使用阿拉伯数字
\setcounter{page}{1}
\subsection{关于\LaTeX模板}
这个\LaTeX是我为了写学位论文而写的,本项目的主页为 \url{http://kaiz.xyz/shu-thesis},
代码都host在\href{https://github.com/zeakey/shu-thesis}{Github}。
%
虽然这个模板写的很简陋,但是完成学位论文写作应该是够用了。
\subsection{关于\TeX和\LaTeX}
\href{https://en.wikipedia.org/wiki/TeX}{\TeX}是由图灵奖得主,程序(program)和算法(algorithm)这两个概念的
提出者,《计算机程序设计的艺术》(The Art of Computer Programming)的作者,著名计算机科学家
Donald E. Knuth(高德纳)发明的排版系统。TeX是特别优秀的排版工具,尤其善于处理复杂的图表和公式。
%
\href{https://en.wikipedia.org/wiki/LaTeX}{\LaTeX}(拉泰赫)是一种基于\TeX的排版系统,由由美国计算机学家Leslie Lamport(莱斯利·兰伯特)在20世纪80年代初期开发,
因此被称为Lamport Tex,简称LaTeX。
\subsection{使用哪个\LaTeX发行版}
\LaTeX拥有众多的发行版,主要有一下几个:
\begin{table}[!h]
\centering
%\renewcommand{\arraystretch}{1}
\setlength\tabcolsep{6.4pt}
\begin{tabular}{c|c|c|c}
\hline
\diagbox{发行版}{支持平台} & Windows & Linux & OSX \\
\hline
\href{http://www.tug.org/texlive/}{TexLive} & \cmark & \cmark & \cmark \\
\hline
\href{https://miktex.org/}{MikTex} & \cmark & \xmark & \xmark \\
\hline
\href{http://www.tug.org/mactex/}{MacTex} & \xmark & \xmark & \cmark \\ \hline
\end{tabular}\vspace{-6pt}
\caption{主要的\LaTeX发行版。
}\label{tab:latex-distr}%
\end{table}%
我比较推荐TexLive,因为它支持主流的平台,而且更新频率也比较高。
\subsection{使用哪个\TeX编辑器}
市面上的\TeX编辑器也是五花八门,选择一个合适的编辑器会让你事半功倍。
我常用的编辑器是\href{http://www.xm1math.net/texmaker/}{TexMaker},
支持双栏预览,左边代码右边预览。
当然也有很多其他的选择,比如Windows平台上比较常用的\href{http://www.winedt.com/}{WinEdit}。
Vim用户还可以使用\href{https://github.com/lervag/vimtex}{VimTex}插件。
\paragraph{在线编辑环境}现在有很多以\url{https://overleaf.com}为代表的
在线的\LaTeX写作平台。
%
这些在线平台普遍支持\red{多人协作}并内置了很多学术期刊会议的模板,而且编译环境在远端
因此\red{不用配置本地环境和安装编辑器}。
%
但由于是在线平台,储存空间有限,而且不能编译太大的源文件
(比如overleaf不支持编译50+pages的文档)。
%
而且由于众所周知的原因,在中国大陆访问这些网站有些时候会出现一些问题。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{公式}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
方便快捷的公式输入是\LaTeX相比于Word的主要优势之一,在熟练掌握的情况下
公式输入的效率会有很大提升。
\LaTeX中的公式主要分为两类:\red{行内公式}和\red{行间公式}。
这是一个行内公式$f(x) = \frac{1}{\sqrt{2\pi}\sigma}\exp{(-\frac{(x-\mu)^2}{2\sigma^2})}$。下面是一个行间公式:
$$
f(x) = \frac{1}{\sqrt{2\pi}\sigma}\exp{(-\frac{(x-\mu)^2}{2\sigma^2})}
$$
这是一个带有编号的公式:
\begin{equation}
f(x)= |x| =
\begin{cases}
x,& \text{if } x\geq 0\\
-x, & \text{otherwise}
\end{cases}
\label{eq:cases}
\end{equation}
多行连等公式:
\begin{equation}
\begin{split}
f(x) &= |x| \\
&= \begin{cases}
x,& \text{if } x\geq 0\\
-x, & \text{otherwise}
\end{cases}
\end{split}
\end{equation}
带有矩阵的公式:
\begin{equation}
\mathbf{H} = -\mathbf\mu \cdot \mathbf{B} = -\gamma B_o \mathbf{S}_z = -\frac{\gamma B_o\hbar}{2}
\begin{bmatrix}
1& \cdots &1\\
\vdots & \ddots & \vdots \\
1 & \cdots & 1
\end{bmatrix}.
\label{eq:matrix}
\end{equation}
带有矢量的公式:%By Kuber
\begin{equation}
\label{eq:current_density_inandout}
\bm{J_i} = -\sigma_i \nabla \phi_i ~;~ \bm{J_e}= -\sigma_e \nabla \phi_e ~.
\end{equation}
带有联立大括号的公式:%By Kuber
\begin{equation}
\label{eq:runge_p_eq}
\left\lbrace
\begin{aligned}
V_{i+1} &= V_i + c_1 K_1 + c_2 K_2 + \cdots + c_p K_p \\
K_1 &= \Delta t f(t_i ,V_i) \\
K_2 &= \Delta t f\left(t_i + a_2 \Delta t, V_i + b_{21} K_1\right) \\
\cdots&~\cdots~\cdots~\cdots~\cdots~\cdots \\
K_p &= \Delta t f\left( t_i + a_p \Delta t, V_i + b_{p1} K_1 + \cdots + b_{p,p-1} K_{p-1}\right) ~.
\end{aligned}
\right.
\end{equation}
对于一个神经网络的求解问题可以公式化成以下形式:
\begin{equation}
\Theta = \argmin_{\theta} J(\theta)
\label{eq:argmin}
\end{equation}
式\ref{eq:argmin}中$\Theta$为求得的最佳参数,$\theta$为神经网络的参数,$J(\theta)$为误差函数。
公式可以添加label属性,并在后文中引用。比如公式~\ref{eq:matrix}就可以被引用,
而且点击引用号可以迅速跳转,详情请见第\ref{sec:ref}章。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{算法和伪代码}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
有时候我们需要在论文中插入一些代码片段来详细说明算法的步骤,
或者需要插入一个伪代码片段来说明算法的流程。
\subsection{插入代码}
% 设置代码样式(关键词颜色,背景颜色,插入代码语言等等)
\lstdefinestyle{customc}{
belowcaptionskip=1\baselineskip,
breaklines=true,
frame=L,
xleftmargin=\parindent,
language=C,
showstringspaces=false,
basicstyle=\footnotesize\ttfamily,
keywordstyle=\bfseries\color{green!40!black},
commentstyle=\itshape\color{purple!40!black},
identifierstyle=\color{blue},
stringstyle=\color{orange},
numbers=left,
}
\lstdefinestyle{customasm}{
belowcaptionskip=1\baselineskip,
frame=L,
xleftmargin=\parindent,
language=[x86masm]Assembler,
basicstyle=\footnotesize\ttfamily,
commentstyle=\itshape\color{purple!40!black},
}
% 插入c语言代码
\lstset{escapechar=@,style=customc}
\begin{lstlisting}[caption={一段C语言程序。},captionpos=b]
#include <stdio.h>
#define N 10
/* Block
* comment */
int main()
{
int i;
// Line comment.
puts("Hello world!");
for (i = 0; i < N; i++)
{
puts("LaTeX is also great for programmers!");
}
return 0;
}
\end{lstlisting}
\begin{lstlisting}[caption={一段Python语言程序。},captionpos=b,language=Python]
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
for c, z in zip(['r', 'g', 'b', 'y'], [30, 20, 10, 0]):
xs = np.arange(20)
ys = np.random.rand(20)
# You can provide either a single color or an array. To demonstrate this,
# the first bar of each set will be colored cyan.
cs = [c] * len(xs)
cs[0] = 'c'
ax.bar(xs, ys, zs=z, zdir='y', color=cs, alpha=0.8)
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Z')
plt.show()
fig.savefig('bar3d.pdf')
\end{lstlisting}
\subsection{插入伪代码}
\begin{algorithm}[H]
\SetAlgoLined
\KwResult{Write here the result }
initialization\;
\While{While condition}{
instructions\;
\eIf{condition}{
instructions1\;
instructions2\;
}{
instructions3\;
}
}
\caption{一个简单的算法。}
\end{algorithm}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{图表}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{插入图片}
\LaTeX支持多种格式的图片,其中包括png、jpg等常见位图,以及pdf、eps等\textbf{矢量图}格式。
矢量图尤其适合科技论文中用于数据展示的各种曲线图和柱状图、饼状图,因为无论如何缩放图像都不会失真。你可以尝试缩放生成的pdf文件到最大,然后观察图~\ref{fig1},图~\ref{fig3}和图\ref{fig:fig3d}中的曲线。
\begin{figure}[!h]
\includegraphics[width=1\linewidth]{figures/pr-curve}
\caption{一个pdf格式的矢量图。使用\\caption命令为图表添加注解,注解中可以引用参考文献~\cite{shen2017label}。}\label{fig1}
\end{figure}
对于曲线图和柱状图等非照片类图表,我推荐插入pdf格式。pdf格式支持绝大部分主流平台(Windows, Linux, OSX),而且可以方便的自由编辑,文件大小也比较小。
如果你使用Python的Matplotlib画图,那么可以直接用matplotlib.pyplot.savefig()
来导出.pdf格式的图片。
如果你使用Matlab画图的话,只能导出eps格式的矢量图。在\LaTeX中插入eps也没有问题,
但是eps文件比同等条件的pdf稍大,而且不方便编辑。
强迫症患者可以将eps转为pdf后再插入到\LaTeX。
同样是一行四列的布局,图~\ref{fig1}直接插入一个包含四个曲线图的pdf文件,
而图~\ref{fig:fig3d}通过增加一个$1\times4$的表格,然后再每个表格单元中各自插入
一个图标文件。
\begin{figure}[!h]
\centering
\begin{overpic}[scale=0.6]{figures/convergence}
\put(50,41){\large{可使用overpic命令}}
\put(38, 35){\Large{往图像上覆盖符号$\Sigma$}}
\put(35,28){\LARGE{公式$f(x)=a\times x$}}
\put(30,20){\huge{引用公式\ref{eq:cases}。}}
\put(25,12){\Huge{参考文献\cite{shen2016object}。}}
\end{overpic}
\caption{一个pdf格式的矢量图。使用\\caption命令为图表添加注解,注解中可以引用参考文献~\cite{shen2017deepskeleton}。}
\label{fig3}
\end{figure}
\begin{figure}[!h]
\centering
\begin{tabular}{@{}cccc@{}}
\includegraphics[width=.25\textwidth]{figures/mplot3d} &
\includegraphics[width=.25\textwidth]{figures/bar3d} &
\includegraphics[width=.25\textwidth]{figures/surface3d} &
\includegraphics[width=.25\textwidth]{figures/trisurf3d} \\
(a)M-plot 3D & (b)Bar-chart 3D &
(c)Surface 3D & (d) Tri-surface 3D \\
\end{tabular}
\caption{通过表格对图片进行布局,在一个$1\times4$表格的每一个单元格中各自插入一个图片文件。
生成上面四个图对应的Python代码在\href{https://github.com/zeakey/shu-thesis/tree/master/figures}{figures}目录下。}
\label{fig:fig3d}
\end{figure}
下面是相关代码:
\begin{lstlisting}[captionpos=b,language=Tex]
\begin{figure}[!h]
\centering
\begin{tabular}{@{}cccc@{}}
\includegraphics[width=.25\textwidth]{figures/mplot3d} &
\includegraphics[width=.25\textwidth]{figures/bar3d} &
\includegraphics[width=.25\textwidth]{figures/surface3d} &
\includegraphics[width=.25\textwidth]{figures/trisurf3d} \\
(a)M-plot 3D & (b)Bar-chart 3D &
(c)Surface 3D & (d) Tri-surface 3D \\
\end{tabular}
\end{figure}
\end{lstlisting}
\subsection{绘图}
除了通过直接插入已经生成的图像文件之外,\LaTeX 还可以通过 Tikz 宏包直接绘制函数图像。
%
下面有几个使用Tikz包绘制三位函数曲面和直方图的例子,由于 Tikz 会让编译的时间变长,代码已经被注释。
%
如果你有兴趣的话可以取消注释然后编译查看效果,或者预览预编译的pdf:
\url{http://data.kaiz.xyz/shu-thesis/shu-thesis.pdf}。
%\begin{figure}[!h]
%\centering
%\begin{tabular}{@{}cc@{}}
% \pgfplotsset{width=0.5\textwidth}
% \begin{tikzpicture}
% \begin{axis}[
% hide axis, %隐藏坐标
% colormap/cool, %颜色风格
% ]
% \addplot3[
% mesh, %绘制的三维图像是网格
% samples=50, %定义域分割数量
% domain=-8:8, %定义域
% ]
% {sin(deg(sqrt(x^2+y^2)))/sqrt(x^2+y^2)}; %二元显式函数
% \addlegendentry{$\frac{sin(r)}{r}$} %添加图例
% \end{axis}
% \end{tikzpicture} &
% %==============================%
% \pgfplotsset{width=0.5\textwidth}
% \begin{tikzpicture}
% \begin{axis}[colorbar] % 绘制坐标,并设置一个彩色指示条
% \addplot3[surf] % 绘制三维图
% {x^2+y^2}; % 输入二元显式函数
% \end{axis}
% \end{tikzpicture}
%\end{tabular}
%\caption{通过Tikz绘制函数图像。}
%\label{fig:tikz_surface}
%\end{figure}
%还有直方图:
%\begin{figure}[!hbt]
%\centering
%\pgfplotsset{width=0.5\textwidth}
%\begin{tikzpicture}
%\begin{axis}[ybar,enlargelimits=0.15] % 绘制关于y坐标的条形图,条形之间的最大间隔是0.15cm
%\addplot[draw=blue,fill=red] % 蓝色边界、红色填充
%coordinates
%{
% (0,4) (1,1) (2,2)
% (3,5) (4,6) (5,1)
%};
%\addplot[draw=black,fill=blue] % 黑色边界、蓝色填充
%coordinates
%{
% (0,3) (1,4) (2,2)
% (3,9) (4,6) (5,2)
%};
%\end{axis}
%\end{tikzpicture}
%\caption{通过Tikz绘制直方图。}\label{fig:tikz_hist}
%\end{figure}
%
本章节的所有图像都是\textbf{使用\LaTeX 代码直接绘制的},并没有使用任何Matlab或者matplotlib等第三方程序生成图像。
当然,生成的的图像全部都是矢量图。
%\pagebreak
\subsection{表格}
\LaTeX使用table环境生成表格。下面就是生成表\ref{tab:performance}的\LaTeX代码:
\begin{lstlisting}[captionpos=b,language=Tex]
\begin{table}[!h]
\centering
\setlength\tabcolsep{6.4pt}
\begin{tabular}{l|c|c|c|c}
\hline
\diagbox{Method}{Dataset} & A & B & C & D \\
\hline
LMSDS~\cite{shen2017deepskeleton} & 0.365 & 0.392 & 0.293 & 0.174 \\
LDLF~\cite{shen2017label} & 0.732 & 0.542 & 0.497 & 0.369 \\
\hline
\textbf{FSDS} (ours) & 0.769 & 0.623 & 0.633 & 0.418 \\
\hline
\end{tabular}\vspace{-6pt}
\caption{This is a table.}\label{tab:sk-fmeasure}\label{tab:performance}%
\end{table}%
\end{lstlisting}
\begin{table}[!h]
\centering
\setlength\tabcolsep{6.4pt}
\begin{tabular}{l|c|c|c|c}
\hline
\diagbox{Method}{Dataset} & A & B & C & D \\
\hline
LMSDS~\cite{shen2017deepskeleton} & 0.365 & 0.392 & 0.293 & 0.174 \\
LDLF~\cite{shen2017label} & 0.732 & 0.542 & 0.497 & 0.369 \\
\hline
\textbf{FSDS} (ours) & 0.769 & 0.623 & 0.633 & 0.418 \\
\hline
\end{tabular}\vspace{-6pt}
\caption{This is a table.}\label{tab:sk-fmeasure}\label{tab:performance}%
\end{table}%
\subsection{图表的排版和定位}\label{sec:location}
\LaTeX相比Word有个缺点就是\emph{非所见即所得}。比如你的两个表格在代码中明明是
相邻一个在前一个在后的,然而排版出来的结果可能是两个被放到了不同的页面中,甚至先后顺序都不对应。
%
\LaTeX图表使用位置参数来确定元素的定位。位置参数有以下几种选项:h (here)、t (top)、b (bottom)、p (我也不知道),分别表示把元素至于当前位置、当前页面的上方、下方。
当你有排版困惑,怎么弄也无法把图标放在自己想要的位置的时候(我经常遇到),最好的解决方法就是疯狂前后移动图表元素对应代码,总有一个位置会是对的。
%
\href{https://tex.stackexchange.com/questions/35125/how-to-use-the-placement-options-t-h-with-figures}{这里}是一个对位置参数的详细介绍。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{交叉引用}\label{sec:ref}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
交叉引用可以说是\LaTeX的核心竞争力了。
我们经常需要在论文中引用文献和文章中的图表,比如说:“根据文献
~\cite{shen2017label},~\cite{shen2016object}和~\cite{shen2017deepskeleton}
所描述的的方法,
以式\ref{eq:cases}作为评价标准,我们可以得到如图~\ref{fig1}所示的性能曲线以及
表~\ref{tab:sk-fmeasure}中的定量型能比较。从图~\ref{fig1}和表~\ref{tab:sk-fmeasure}的结果来看,~\cite{shen2016object}和~\cite{shen2017deepskeleton}
具有较好的检测效果”。
如果你使用Word撰写学位论文,可以想象一下情景:你的论文有50+条引用,
你要在论文中反复交叉引用这些参考文献;然后现在你发现你的绪论部分需要补充一条
参考文献,而有的引用格式要求参考文献引用标号按文中出现先后的顺序排列,
当插入一条参考文献之后你如何处理后续的参考文献编号?
%%
或者有下面一个场景:当你完成第三章写作之后发现图3.6和图3.7之间要再插入一张图,然后
你发现图3.7和图3.7之后的所有图片的标号都要改,而且你的文中所有引用到这些图的地方都需要修改。
\textbf{\LaTeX强大的交叉引用功能}将把你从繁琐的文献/图表/公式标号中解放出来,
你只用关注写作本身,其他的事情会帮你自动完成。
%
当你写完一个图表/公式,给它添加一个label属性,然后在需要引用的地方使用ref\{the-label\}
进行引用,\LaTeX将自动为你排好序号。
%
比如"根据文献~\cite{shen2017label},~\cite{shen2016object}
和~\cite{shen2017deepskeleton}所描述的的方法,
以式\ref{eq:matrix}作为评价标准,我们可以得到如图~\ref{fig1}所示的性能曲线以及
表~\ref{tab:sk-fmeasure}中的定量型能比较。从图~\ref{fig1}和表~\ref{tab:sk-fmeasure}的结果来看,~\cite{shen2016object}和~\cite{shen2017deepskeleton}
具有较好的检测效果"。
\TeX文档中的所有内容都可以添加label属性从而进行交叉引用。比如说文章的一个子章节
(subsection)就可以被引用:第\ref{sec:location}章描述了如何对\TeX元素进行定位。
更强大的是,所有的生成的引用标号都是可以点击的,
当你在生成的pdf中点击引用标号,将自动弹到对应的文献/图表/公式处。
%
另外,在文章最后的参考文献列表中,每一条参考文献的末尾都会标注这条参考文献在哪一页被引用。
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{有用的链接}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{itemize}
\item 数学符号速查表 \url{http://web.ift.uib.no/Teori/KURS/WRK/TeX/symALL.html}
\item 字体大小 \url{https://texblog.org/2012/08/29/changing-the-font-size-in-latex/}
\item 一个比较全的 \LaTeX \ WiKi \url{https://en.wikibooks.org/wiki/LaTeX}
\end{itemize}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{参考文献}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\LaTeX使用bib(或者latexbib)管理参考文献。新增参考文献条目时只需要在将bib格式的参考文献加入bib文件中,然后重新编译即可。在文中使用cite\{citationA\}引用即可。
点击参考文献编号\cite{shen2017deepskeleton}可跳转至对应的参考文献条目。
%% 参考文献
\pagebreak
\zihao{5} % 依据上大Word模板,参考文献字号为5号字体%By Kuber
\bibliographystyle{ieeetr}
\addcontentsline{toc}{section}{参考文献}
\bibliography{shu-thesis}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\pagebreak
\zihao{-4} % 字体调整回小四 %By Kuber
\section*{作者在攻读硕士学位期间公开发表的论文}
\addcontentsline{toc}{section}{作者在攻读硕士学位期间公开发表的论文}
%\nobibliography*
\begin{enumerate}
\item “Object Skeleton Extraction in Natural Images by Fusing Scale-associated Deep Side Outputs",in \emph{Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition}, June 2016.
(IEEE CVPR为模式识别和计算机视觉的三大国际顶级会议,中国计算机协会列为A类会议,根据2017年谷歌学术统计,h5-index排名所有学术刊物第35位,位列工程和计算机领域所有学术刊物第一位。)
\item “Skeletonization in Natural Images and Its Application to Object Recognition" in "\textbf{ Skeletonization: Theory, Methods, and Applications }", Punam Saha, Gunilla Borgefors, Gabriella Sanniti di Baja (Ed.),
Academic Press, 2017. ISBN: 978-0-081-01291-8. (本书为爱思唯尔 Elsevier出版的学术专著。)
\item “DeepSkeleton: Learning Multi-task Scale-associated Deep Side Outputs for Object Skeleton Extraction in Natural Images",in \emph{IEEE Transactions on Image Processing}, 2017.(注:第二作者,导师第一作者。IEEE TIP是中国计算机协会A类、图像处理领域的顶级期刊,SCI II区。)
\item “Label Distribution Learning Forests",in \emph{Proceedings of Advances in neural information processing systems}, 2017.(注:NIPS 是机器学习领域的顶级会议、中国计算机协会A类会议。)
\item “基于对称轴的自然图像中物体部件检测”,《中国科技论文》第14期。
\end{enumerate}
%\emph{IEEE Conference on Computer Vision and Pattern Recognition}(\textbf{CVPR}),是计算机视觉领域三大国际顶级会议(CVPR, ECCV, ICCV)之一。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\pagebreak
\section*{作者在攻读硕士学位期间所参与的项目}
\addcontentsline{toc}{section}{作者在攻读硕士学位期间所参与的项目}
\begin{enumerate}
\item 国家自然科学基金(No.61303095),基于有监督学习的自然图像中骨架提取和物体识别研究(2014.1-2016.12)。
\item 上海市教育委员会科研创新项目(No.14YZ018),基于对称性的自然图像中物体表示与识别研究(2014.1-2015.12)。
\item 高等学校博士学科点专项基金(No.20133108120017),基于对称性表示的自然图像中目标定位研究(2014.1-2016.12)。
\end{enumerate}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\pagebreak
\section*{致谢}
\addcontentsline{toc}{section}{致谢}
感谢杜行健同学对本项目的意见和建议,同时感谢上海大学\href{https://www.shuosc.org/}{开源社区}的支持。
\end{document}