第 6 章 其他工具

这里介绍一些可以提高LaTeX写作效率的其他工具

6.1 符号

在我们初学LaTeX时,经常会遇到不知道怎么输入的符号. Detexify 这个网站可以手写输入符号,给出所有可能的结果.

6.2 公式

mathpix(目前已收费,免费账户每月限50次)

可以很方便的将图片公式转成LaTex形式,手写公式不太乱的话也是可以识别的.

6.3 表格

在LaTeX中插入表格并不是很简单的一件事,尤其是当表头需要合并单元格时. 这里介绍一些可以提高输入表格效率的工具.

6.3.1 xtable包

在R中进行模拟时,将结果输出至LaTeX可以利用这个包中的xtable函数.

https://cran.r-project.org/web/packages/xtable/index.html

xtable::xtable(matrix(rnorm(12),3,4))
## % latex table generated in R 3.6.0 by xtable 1.8-4 package
## % Tue Sep  3 19:15:40 2019
## \begin{table}[ht]
## \centering
## \begin{tabular}{rrrrr}
##   \hline
##  & 1 & 2 & 3 & 4 \\ 
##   \hline
## 1 & 1.07 & -0.63 & -0.10 & -0.26 \\ 
##   2 & 1.45 & 0.35 & 0.64 & -0.65 \\ 
##   3 & -0.22 & -1.53 & 0.49 & -0.30 \\ 
##    \hline
## \end{tabular}
## \end{table}

这样我们直接粘贴到LaTeX中就可以了.

但是,这还不够.每次都要复制粘贴仍然很麻烦,而且如果表格的行名、列名有特定的格式,并不能直接粘贴结果(可以利用选择矩形区域修改).

我们可以利用LaTeX的\input{}指令,完成更酷的操作.

大致流程就是在R中将xtable的输出结果写入文本文件“tableXXXX.tex”,然后在tex中需要插入表格的地方\input{tableXXXX.tex}.

这样我们每次要把R新计算出来的表格更新到tex中,只需要重新编译一次即可.

关于复杂表头的设计,可以参考这个回答:

https://stackoverflow.com/questions/15036754/r-package-xtable-how-to-create-a-latextable-with-multiple-rows-and-columns-from

可以从: https://github.com/Ri0016/table-update-tex 下载示例程序.

6.3.2 Excel2LaTeX

可以在Excel中合并好单元格,导出tex的表格.

https://github.com/krlmlr/Excel2LaTeX/releases

6.3.3 LaTeX中合并单元格

不知道tex合并单元格的命令可以在这个页面生成表格的tex代码:

http://www.tablesgenerator.com/#