LaTeX學習-day06
教程鏈接:B站
使用環境:
- 系統:Windows 10
- TeX 系統:TeX Live (官網下載)(清華源)
- IDE:Tex Studio
表格
- 代碼:
% 導言區
\documentclass[UTF8]{ctexart}
%表格
% \begin{tabular}[<垂直對齊方式>]{<列格式說明 >}
% <表項> & <表項> & ... & <表項> \\
% ......
%\end{tabular}
% 用\\表示換行
% 用&表示不同的列
% l-本列左對齊
% c-本列居中對齊
% r-本列右對齊
% p{<寬>}-本列寬度固定,能夠自動換行
% 詳情:texdoc booktab (longtab,tabu)
\usepackage{booktabs} %需要加載宏包{booktabs}
\usepackage{multirow}
\usepackage{diagbox} % 加載宏包
%正文區(文稿區)
\begin{document}
\begin{tabular}{|l||c|p{1.5cm}|c|r|}
% |表示垂直邊框 \hline表示水平邊框
%||(\hline \hline)表示雙邊框
%p{1.5cm}指定寬度1.5cm,內容超過指定寬度自動換行
\hline
姓名 & 語文 & 數學 & 外語 & 備註 \\
\hline \hline
張三 & 87 & 100 & 93 & 優秀 \\
\hline
李四 & 75 & 64 & 52 & 補考另行通知 \\
\hline
王五 & 80 & 82 & 78 & \\
\hline
\end{tabular}
添加網絡資源 \\
1.基本格式 \\
\begin{tabular}{cc}%一個c表示有一列,格式爲居中顯示(center)
(1,1)&(1,2)\\%第一行第一列和第二列 中間用&連接
(2,1)&(2,2)\\%第二行第一列和第二列 中間用&連接
\end{tabular}
2.添加豎線和橫線 \\
\begin{tabular}{|c|c|}% 通過添加 | 來表示是否需要繪製豎線
\hline % 在表格最上方繪製橫線
(1,1)&(1,2)\\
\hline %在第一行和第二行之間繪製橫線
(2,1)&(2,2)\\
\hline % 在表格最下方繪製橫線
\end{tabular}
3.設置每一列的單元格格式 \\
\begin{tabular}{|l|c|r|} %l(left)居左顯示 r(right)居右顯示 c居中顯示
\hline
Name&Steve&Bill\\
\hline
Matlab&Mathmatica&Maple\\
\hline
\end{tabular}
4.常見的三線表 \\
\begin{tabular}{ccc}
\hline
姓名& 學號& 性別\\
\hline
Steve Jobs& 001& Male\\
Bill Gates& 002& Female\\
\hline
\end{tabular}
通常來說,我們會希望表格的第一根線和最後一根線比表格中的橫線更粗一些。 \\
%\usepackage{booktabs} %需要加載宏包{booktabs}
\begin{tabular}{ccc}
\toprule %添加表格頭部粗線
姓名& 學號& 性別\\
\midrule %添加表格中橫線
Steve Jobs& 001& Male\\
Bill Gates& 002& Female\\
\bottomrule %添加表格底部粗線
\end{tabular}
5.table環境 \\
\begin{table}[!htbp]
\centering
\caption{這是一張三線表}\label{tab:aStrangeTable}%添加標題 設置標籤
\begin{tabular}{ccc}
\toprule
姓名& 學號& 性別\\
\midrule
Steve Jobs& 001& Male\\
Bill Gates& 002& Female\\
\bottomrule
\end{tabular}
%\caption{這是一張三線表}\label{tab:aStrangeTable} 標題放在這裏也是可以的
\end{table}
{table}有若干可選參數 [!htbp]
h代表here,將表格排在當前文字位置
t 表示將表格放在下一頁的 top (頁首)
b 表示將表格放在當前頁的 bottom (底部)
!表示忽略美觀因素,儘可能按照參數指定的方式來處理表格浮動位置。
表格將會按照所給參數,依次嘗試按照每個參數進行排版,當無法排版時,將會按照下一個參數
6.單元格合併 \\
\begin{table}[!htbp]
\centering
\begin{tabular}{|c|c|c|}
\hline
\multicolumn{3}{|c|}{學生信息}\\ % 用\multicolumn{3}表示橫向合併三列
% |c|表示居中並且單元格兩側添加豎線 最後是文本
\hline
姓名&學號&性別\\
\hline
Jack& 001& Male\\
\hline
Angela& 002& Female\\
\hline
\end{tabular}
\caption{這是一張三線表}
\end{table}
% \usepackage{multirow}
\begin{table}[!htbp]
\centering
\begin{tabular}{|c|c|c|c|c|c|c|} %表格7列 全部居中顯示
\hline
\multicolumn{7}{|c|}{事件}\\ %橫向合併7列單元格 兩側添加豎線
\hline
\multirow{4}*{策略}&50&0&100&200&300&300\\ %縱向合併4行單元格
\cline{2-7} %爲第二列到第七列添加橫線
&100&100&0&100&200&200\\
\cline{2-7}
&150&200&100&0&100&200\\
\cline{2-7}
&200&300&200&100&0&300\\
\hline
\end{tabular}
\end{table}
橫向合併和縱向合併可以嵌套 \\
\begin{table}[!htbp]
\centering
\begin{tabular}{|c|c|c|c|c|c|c|}
\hline
\multicolumn{2}{|c|}{ \multirow{2}*{$S_i$} }& \multicolumn{4}{c|}{事件} &\multirow{2}*{max}\\
\cline{3-6}
\multicolumn{2}{|c|}{}&50&100&150&200&\\
\hline
\multirow{4}*{策略}&50&0&100&200&300&300\\
\cline{2-7}
&100&100&0&100&200&200\\
\cline{2-7}
&150&200&100&0&100&200\\
\cline{2-7}
&200&300&200&100&0&300\\
\hline
\end{tabular}
\end{table}
7.斜線表頭 \\
%需要使用{diagbox}宏包
\begin{table}[!htbp]
\centering
\begin{tabular}{|c|c|c|c|}
\hline
\diagbox{甲}{$\alpha_{i,j}$}{乙}&$\beta_1$&$\beta_2$&$\beta_3$\\ %添加斜線表頭
\hline
$\alpha_1$&-4&0&-8\\
\hline
$\alpha_2$&3&2&4\\
\hline
$\alpha_3$&16&1&-9\\
\hline
$\alpha_4$&-1&1&7\\
\hline
\end{tabular}
\end{table}
8.其他(2018.11.23) \\
%對於多行多列嵌套斜線表頭的情況,不加參數會出現斜線不處於對角線位置的情況
\begin{table}[!htbp]
\centering
\begin{tabular}{|c|c|c|c|c|c|c|}
\hline
\multicolumn{2}{|c|}{\multirow{2}*{\diagbox[innerwidth=2cm]{$S_i$}{$\lambda_i$}}}& \multicolumn{4}{c|}{事件} &\multirow{2}*{max}\\
\cline{3-6}
\multicolumn{2}{|c|}{}&50&100&150&200&\\
\hline
\multirow{4}*{策略}&50&0&100&200&300&300\\
\cline{2-7}
&100&100&0&100&200&200\\
\cline{2-7}
&150&200&100&0&100&200\\
\cline{2-7}
&200&300&200&100&0&300\\
\hline
\end{tabular}
\end{table}
from CSDN:Latex基本表格繪製
\end{document}
- 結果