LaTeX入门系列之图表绘制(一):基础

LaTeX的图表因为其缺乏直观的代码对初学者不甚友好,我在这里对LaTeX中的基本的图表绘制做一个综述,方便各种图表绘制时的备查。

表格是一种二维的信息表达形式。

###基础表格绘制

  • 一般使用 tabular 环境进行表格的排布
  • 使用 array 环境进行包含数学符号等的内容的排布
1
2
3
4
5
6
7
8
9
10
\begin{tabular}[对齐(可选有t和b)]{列格式(lcr等三种形式)}
内容&内容&……&内容\\
……
\end{tabular}
其中列格式有如下:
l: 左对齐列
c: 居中对齐
r: 右对齐列
p{}: 固定此列的宽度,可自动换行
|:列与列之间添加分隔的竖线
1
2
3
4
\begin{array}[对齐]{列格式}
内容&内容&……&内容\\
……
\end{array}

其中,\\表示换行,用&表示不同单元格的分隔。

tabular 和 array 表示的都是一个普通的盒子,因此是直接与其他的文字或公式混合在一起的,我们可以将其置于一个浮动体中来规避。

一个普通表格例子:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
\documentclass[a4paper]{article}
\usepackage{ctex}
\begin{document}
\begin{tabular}{|c|ccc|p{3cm}|}
\hline
空&吃&喝&玩&乐\\
\hline
张三&鱼&酒&吉他&赚钱\\
李四&肉&水&code&赚钱\\
王麻子&海鲜&饮料&羽毛球&赚钱\\
\hline
\end{tabular}
\end{document}

一个行列式例子:

1
2
3
4
5
6
7
8
9
10
11
12
13
\documentclass[]{article}
\usepackage{ctex}
\begin{document}
$\left( %行列式中大部分都会含有数学成分,因此需要使用将其全部加入$$公式环境中
\begin{tabular}{lcc|r}
&吃&喝&玩\\
张三&鱼&酒&吉他\\
李四&肉&水&code\\
王麻子&海鲜&饮料&羽毛球\\
\end{tabular}
\right)$%注意两边大括号的书写方式\left(和\right)
\end{document}


改变行列间距的方法

列间距:最小距离的一半由变量 \tabcolsep 和 \arraycolsep 控制

行间距:由宏 \arraystretch 控制

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
\documentclass[border={30mm 3mm 30mm 3mm}]{standalone}
\usepackage{ctex}
\begin{document}
%---------------
%\arraystretch是宏,默认值是1,通过如下修改可以改变其间隔的倍数
\renewcommand\arraystretch{2}
\setlength\tabcolsep{10mm}
%\tabcolsep是变量,对应的是具体的数值
%---------------
$\left(
\begin{tabular}{lcc|r}
&吃&喝&玩\\
张三&鱼&酒&吉他\\
李四&肉&水&code\\
王麻子&海鲜&饮料&羽毛球\\
\end{tabular}
\right)$
\end{document}

NOTICE:\arraystretch是宏,所以用\renewcommand 来设定

​ \tabcolsep 是变量,用 \setlength 设定