1、论文绘图软件
第10名:锯齿风Matlab
Matlab只排在第十位是因为本来它就不是一个用来做画图的软件。人家的主要功能是矩阵操作、统筹优化、数学实验、仿真模拟(此处省略一万字)等等好吗?用matlab画图简直就是高射炮打蚊子——大材小用。如果非要只比较它的画图能力,只能说呵呵了,下面是Matlab的画风,淡淡的锯齿风一直被网友所吐槽。
Matlab画图虽然锯齿严重,但这并不能掩盖它是一款极其优秀的科学计算软件的事实。每个人只有在适合自己的岗位上才能充分发挥自己的优势,每个软件也是一样。所以使用matlab画图功能时,最合适的用途是用来实施检查编程结果是否正确,并不做最后报告或论文输出。
第9名:清爽风Gnuplot
Gnuplot是一个命令行的交互式绘图工具。用户通过输入命令,逐步设置或修改绘图环境,并以图形描述数据或函数。优点是画图速度快、画风清爽,软件开源且免费,图片质量相当专业。缺点是:需要写代码。
第8名:高冷风Matplotlib
Matplotlib是著名Python的标配画图包,其绘图函数的名字基本上与 Matlab的绘图函数差不多。优点是曲线精致,软件开源免费,支持Latex公式插入,且许多时候只需要一行或几行代码就能搞定。缺点是需要Python编程基础。
第7名:简易风visio
Microsoft Visio是Windows 操作系统下运行的流程图软件,它现在是Microsoft Office软件的一个部分。
Visio可以制作的图表范围十分广泛,利用Visio的强大绘图功能绘制地图、企业标志等。最主要还是用来画流程图、示意图。
从matlab、gnuplot和matplotlib中选一个画曲线图的软件,并和画示意图的visio搭配,是画图初级阶段的标配。
第6名:SCI风Origin
Origin是简单易学、操作灵活、功能丰富全面的画图软件,既可以满足一般用户的制图需要,也可以满足高级用户数据分析、函数拟合的需要。
目前,它似乎已成为专业论文SCI的标配绘图软件。缺点是操作系统不太友好、易崩溃,只支持Windows系统。
第5名:统计风R-ggplot2
ggplot2是R语言的一个包,最擅长统计数据可视化。ggplot2按图层作图,其核心理念是将绘图与数据分离。缺点是ggplot2功能没有Python或者Matlab全面,不过人家就是在统计方面做的最好最专业,其它的功能忽略掉好像也无所谓。
第4名:流场风Tecplot
Tecplot从简单的二维曲线曲面图,到复杂的三维动态图都可以实现。它的特色在于可快捷的将大量数据资料转化为容易理解的图片,例如等高线、向量图、网格图、剖面图、流线图等等。
它提供和CAD、CFD软件的接口,可以用于其它分析软件(如有限元、计算流体动力学等)的后处理工作。
第3名:矢量风Illustrator
Adobe illustrator是一种应用于出版、多媒体和在线图像的工业标准矢量插画的软件。
作为一款非常好的图片处理工具,Adobe Illustrator广泛应用于印刷出版、海报书籍排版、专业插画、多媒体图像处理和互联网页面的制作等,也可以为线稿提供较高的精度和控制,适合生产任何小型设计到大型的复杂项目。
从Origin、ggplot2和Tecplot中选一个画图的软件,并和画示意图的illustrator搭配,是画图中级阶段的配置。
第2名:专业风Paraview
Paraview除了可以画最基本的曲线曲面图等,也提供和CAD、CFD软件的接口,可以用于其它分析软件的后处理工作。
Paraview支持多种数据格式和显示方式,目前包括网格绘制,面绘制,体绘制等方法。可视化包含:数据读取,数据过滤和数据渲染三个基本的步骤。Paraview提供开源可编程。缺点是难度较高,入门需花时间。
第1名:LaTex风Tikz
Word是很目前很流行的排版软件。然而还有另外一种和它相媲美只是没那么流行的排版软件——LaTeX,它是一种基于TEX的排版系统。利用它能在短时间内生成很多具有书籍质量的印刷品,尤其是生成复杂表格和数学公式。因此它非常适用于生成高印刷质量的科技和数学类文档。
Tikz是LaTex原生支持的图包来,可以画论文中的插图。用TikZ画可以做到完美,特别是与LaTeX文档的整体交互,比用一般绘图软件好得多。二维图、三维图、流程图、示意图都能实现。同样的,缺点也是难度较高,入门需花时间。
2、思维脉络图
http://naotu.baidu.com/file/3e930fb66cca51ede065b4f1a04a0477?token=cdc3eec8915e78d1
3、赶文章
https://mp.weixin.qq.com/s/byEIRAsYeWcMb06IKBPAKA
所有的数据都要有出处和原始的实验记录,所有的推导都要有详细过程,即使这些细节不在文中出现,也一定要长期保留!好的文章会有很多人follow你的工作,大家会要求你的代码公开、重复你的实验,和你的结果做比较。记住,所以不能重复的实验都是骗子、都是耍流氓!开源是个好办法:既检验了你的工作的可信性,又宣传了你的工作。
在整个写作的过程中保持和导师及时良好的更新与沟通是十分必要的。大多数导师的时间是碎片化的,对你的文章真的是“想起来就看一下“。如果你不能随时提供一个最新的版本,那么他对你的反馈就不可能是及时有效的。所以,建立一个Dropbox文件夹,每天把最新的版本和导师做一个更新,并提醒导师,是有效的督促导师修改和润色你的文章的方法。陈老师之前说过,导师对你科研的作用是为了让你行进在正确的方向上,在你每次跑偏的时候及时把你拉回来。这个时间间隔越长,你跑偏的可能性就越大,跑偏的距离就越长,把你拉回来所需要的力气就越大。
对于导师的意见要及时反馈(be responsive)。之前流行过一篇鸡汤,说靠谱的人只需要做到三点:凡事有交代,件件有着落,事事有回音。试想老师告诉你去修改1,2, 3, 4, 5,你回来只修改了2, 4, 5,然后他再给你1,3, 6,你再回来个1和6,那他肯定非疯了不行(但这样的学生我真的见过还不少)。还有,千万不能玩消失。我知道有的学生害怕被导师骂或者希望做完了再跟老师说而玩消失,不回老师email,电话,微信,…直到把事情做完,那导师就只有祈祷上帝你做的是他想要的这一条路了。
最后,合理的安排时间也很重要。买菜做饭陪女朋友逛街这些事情请在deadline之前的一周先做了!一个做事没有计划、不知轻重缓急的人丢掉的不仅仅是一篇论文,而是你的未来。
也许最后你已经做不了什么了(也千万别做大的修改以免忙中出错),但至少你可以仔细检查文章的每一个细节,包括拼写错误,标题的大小写是否一致,是否有遗漏的引用或者引用错误(latex上会出现一个问号“?”)图的caption的字体大小是否统一,等等。
图表错误是最容易忽视的部分:我曾经有个现在已经做教授的学生在当年一篇文章提交时慌忙中贴错了一张图,结果文章虽然review获得高分,但还是被一个评审发现问题给据掉了。我建议他把那篇评审结果打出来贴在墙上,提醒自己不要再犯这样愚蠢的错误。记得,检查到最后一分钟,不断提交修改错误后的论文直到网站关闭!
4、ESLWriter教您自助写论文
https://mp.weixin.qq.com/s/sQMeSV9zv9IbvDe6C96j9A
ESLWriter是一款专为中国学者设计的学术英语写作查询助手,它完整收录了计算机领域CCF列表9大领域的论文供写作时用语参考,如HPC、AI、CG等,默认为HCI,登陆后即可切换。所有用法和例句均选自设定领域内的A类和B论文,方向匹配才能写出最地道的论文。
ESLWrtierter提供多种搭配查询:动宾、修饰、介词、主谓。搭配类型无需手动输入,输入1-2个单词后从自动补全列表中选择即可。侧边栏按照使用数量为相关搭配排序,帮您轻松找到最地道的用法。
除了直接为词语搜索搭配外,您也可以为已有的词语搭配替换部分词语,输入短语后,通过搜索栏补全语法结构后,在想要替换的词语后输入问号,就可以替换查找该单词。
虽然你是第一作者,但请记住你的身后是所有共同作者的心血和努力。如果他们不帮你完成这篇文章,他们完全可以去写另一篇文章。你的放弃是对他们生命的浪费。在一个学术领域,*会议往往只有1-2个。你错过了一次deadline,可能大家半年甚至一年的心血就白费了,下一次机会又是半年以后。所以一旦决定要投稿,请无论如何不要放弃,一定要努力到最后一分钟再说!
5、论文排版和LaTeX书写方法介绍
https://mp.weixin.qq.com/s/-ILKnRuyB0ftv2Boi4smMA
中文排版
不论中英文, 科技文章通常均使用英文半角标点。中文文章的行内公式和两边正文之间要有空格。例如:
通过计算协方差矩阵~$\Sigma$~我们可以\ldots % 注意"~"
此外, 推荐使用 XeLaTeX 编译器编译中文文章. XeLaTeX 对中文支持较好, 比如它可以自动在行内公式和两边正文之间加空格, 无需人为指定。
(1)括号/引用号
英文文章中括号, 以及引用符号 (如 [1], [2] 等) 要与前一个词留有空格, 而中文文章通常则不同。例如:Principal component analysis (PCA) is a statistical procedure that \ldots
(2)引号
和 Word 这种所见即所得的排版软件不同, LaTeX 用不同的符号分别表示左引号和右引号。左引号用`表示 (键盘左上角, Tab 键上面), 右引号用'表示 (平时输引号的那个键). 双引号用过输入两个引号来得到。例如:
`machine', ``learning''.
(3)连字符
不同长度的"-"表示不同含义。 一个"-"长度的连字符用于词中; 两个"-"长度的连字符常用于制定范围; 三个"-"长度的连字符是破折号; 数学中的负数要用数学环境下的-得到。例如:daughter-in-law, pages 13--67, yes --- or no?, $-1$.
(4)着重强调
在正式文章中, 通常不使用粗体进行强调, 需要强调的词使用斜体标出。例如:
PCA is the simplest of the true \emph{eigenvector}-based multivariate analyses.
(5)数字分隔
文中出现的位数很长的数字要用逗号","进行分割, 每 3 位数字进行分割, 逗号两侧不加空格。例如:The MNIST dataset contains 60,000 images \ldots
图表格式
所有的图表都要有题目, 图的题目要写在图的下方, 而表的题目要写在表格的上方。图表的题目是一句话, 所以要以句号"."结尾。在正文中对图/表/章节的引用可以用如下方式, 注意 Figure/Table/Section 和数字之间的"~":
\ldots, as illustrated in Figure~1. \\\ldots, as shown in Figure~2. \\
As Figure~3 illustrates, \ldots \\
Figure~4 shows \ldots \\
Table~1 summarizes \ldots \\\ldots will be discussed in Section~1. \\\ldots, as described in Section~2.
在实际写文章时, 所有的引用 (figure, table, equation, section) 都应该用 ref 来管理, 这样编号可以自动生成, 免去手工调整编号的烦恼。
数学环境
LaTeX 自身只提供最基本的数学符号和环境, 因此我们在需要书写数学公式时, 通常在引言区导入 amsmath 包:
\usepackage{amsmath}
以下我们假定 amsmath 包已被导入。
数学符号
(1)数域
实数域, 自然数域等表示数域的符号需要用空心字母表示. 空心字母在 LaTeX 中用 mathbb 输入, 这需要在引言区导入 amssymb 包. 例如:
\usepackage{amssymb}$\mathbb{R}, \mathbb{N}$.
(2)组合数
和国内通常用 Cnk 表示组合数不同, 国际上通常用括号表示组合数, 读作"n choose k". 在 LaTeX 中组合数可以用 binom 命令打出。例如:
$\binom{n}{k}$.
(3)集合
集合中的分割可以用竖线"|", 也可以用冒号":". 分割符与左右要有空格。例如:
$\{x \mid x \ge 0.\}$. % Note "\mid" instead of "|"
(4)省略号
省略号分两种。列举一系列元素中的省略用 ldots; 数学运算表达式中的省略用 cdots. 即省略号高度要和左右符号的高度一致。而在普通文本中的省略号一律用 ldots。例如:
$x_1, x_2, \ldots, x_n$, $x_1 + x_2 + \cdots + x_n$.
(5)优化问题
通常, 优化问题解得的最优值用 star 表示, 而不是"*". 优化问题的变量要写到"arg min"或"arg max"整体的下方。例如:
\begin{equation}
x^\star = \mathop{\arg\min}_x (x-1)^2 \,.
\end{equation}
(6)函数映射
函数映射通常有其固定的写法, 例如:$f\colon A \mapsto B$.
(7)矩阵与向量
矩阵和向量要用粗体表示。有人习惯于用直立粗体表示矩阵, 用斜体粗体表示向量。使用 bm 需要在引言区导入 bm 包. 例如:
\usepackage{bm}$\bf{A}, \bf{\Omega}, \bm{x}, \bm{\mu}$.
如果让大小写字母都变为斜体粗体, 可以用 boldsymbol 命令。例如:
$\boldsymbol{A}, \boldsymbol{\Omega}, \boldsymbol{x}, \boldsymbol{\mu}$.
此外向量也可以用箭头标注。例如:$\vec x, \vec \mu$.
矩阵和向量可以用中括号"[]"或小括号"()"表示, 目前国际上用中括号表示更常见, 这是因为用小括号表示矩阵和向量容易和表示代数运算优先级的小括号相混淆。在 LaTeX 中可以用 bmatrix 环境书写矩阵。例如:
\begin{equation}
\begin{bmatrix}
a_{11} & a_{12} & \cdots & a_{1n} \\
a_{21} & a_{22} & \cdots & a_{2n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{m1} & a_{m2} & \cdots & a_{mn} \\
\end{bmatrix}
\end{equation}
数学公式中的直立体
(1)有单位的量
表示单位量纲的符号不是变量, 故应当以直立体出现, 并且数字和单位之间要有空格, 例如:$m = 50\,\mathrm{kg}, V = 150\,\mathrm{m}^3$. % Note "\,"
此外, siunitx 包含了标准单位, 能自动调整字体和间距, 还可以以非常自然的方式实现复杂的单位和科学记数法等表达。
(2)微元符号
表示微元的 d 不是变量, 应当以直立体出现。此外, 在积分符号中, 微元符号要与前面的被积函数保持一定空格距离. 例如:$\int_1^2 \log x \, \mathrm{d} x$. % Note "\,"
(3)转置符号
表示转置的 T 不是变量, 应当以直立体出现。例如:$\boldsymbol x^{\mathrm{T}}$.
此外, 也有人用 intercal, top, 或 mathsf{T} 来表示转置.
(4)函数名
函数名不是变量, 故应当以直立体出现。LaTeX 内置支持一些常用的函数名, 例如:
$\sin(x), \exp(x)$.
当我们需要自己定义函数名时, 在在引言区使用 DeclareMathOperator 命令声明需要定义的函数名。例如:
\DeclareMathOperator{\sign}{sign}
$\sign(x)$.
公式标点与标号
(1)标号基础
重要的公式需要标号。包含在 equation 环境中的环境会被自动标号, 如果你不需要标号, 可以用 equation*环境或将公式放于\[和\] 之间。例如:
\begin{equation} % Equation with numbering
e^{i\pi} = -1
\end{equation}
\begin{equation*} % Equation without numbering
a^2 + b^2 = c^2
\end{equation*}
\[ % Equation with numbering
a^2 + b^2 = c^2
\]
(2)标点基础
公式后的标点是很多人忽视的地方。并不是所有公式后都要或不要加标点, 公式 (包括行内公式和行间公式) 是句子的一部分, 因此, 我们需要根据公式在句子中所处的位置来判断在公式后加什么标点. 行间公式中公式和标点之间要空格。例如:
Einstein introduced his formula
\begin{equation}
E = m \cdot c^2 \,, % Note "\,,"
\end{equation}
which is at the same time the most widely known and the least well understood
physical formula.
\ldots from which follows Kirchhoff's current law:
\begin{equation}
\sum_{k=1}^n I_k = 0 \,. % Note "\,."
\end{equation}
\begin{equation}
I_D = I_F - I_R % No break
\end{equation}
is the core of a very different transistor model.
(3)多行公式的标点与标号
多行公式通常只在最后一行结尾时根据需要标点与标号。最新版本的 LaTeX 建议使用 IEEEeqnarray 环境替代 eqnarray 环境书写多行公式, 这需要在引言区导入 IEEEtranstools 包。例如:
\usepackage[retainorgcmds]{IEEEtrantools}
\begin{IEEEeqnarray*}{rCl}
a &=& b + c \\
&=& d + e \\
&=& f + g \,. \IEEEyesnumber \\
\end{IEEEeqnarray*}
(4)多分支公式的标点与标号
分支是公式的一部分, 我们只对整体做一个标号, 不对每个分支进行单独标号。每个分支需要单独进行标点: 前面的分支结束后要用分号";", 最后一个分支结束后根据需要进行标点。此外, 和写编程语言不同, 与 if 分支对应的通常是 otherwise, 而不是 else. LaTeX 中, 分支可以用 cases 环境书写。例如:
\begin{equation}
|x| =
\begin{cases}
-x & \text{if } x < 0 \,;\\
x & \text{otherwise} \,. \\
\end{cases}
\end{equation}
(5)优化问题的标点与标号
通常 max/min 和 s.t.(读作"subject to"而不是"such that") 保持中心对齐, 目标函数项和各约束项保持左对齐。只在目标函数项那一行标号但不标点, 各约束项标点但不标号。例如:\begin{alignat}{2}
\min_x \quad & f(x) & \\
\mathrm{s.t.} \quad & g_i(x) \le 0, &\quad i = 1, 2, \ldots, m \,, \nonumber \\
& h_j(x) = 0, &\quad j = 1, 2, \ldots, n \,. \nonumber
\end{alignat}
此外, 也有人将优化问题看作一个整体, 对整体作一居中标号。
(6)数学证明
数学证明以"Proof."开始, 以方框符号结尾。amsthm 包提供了证明环境。例如:
\usepackage{amsthm}
\begin{proof}
Trivial.
\end{proof}