Latex中表格問題

不愛學習的Shirley發表於2020-07-27

    最近在學習使用Latex,在學習過程中碰到很多小問題,故記之。

    以下是一個參數列的例項(繪成三線表的形式)。

 1  \begin{table}[hp] %%引數: h:放在此處 t:放在頂端 b:放在底端 p:在本頁
 2   \renewcommand\arraystretch{1.2}
 3   %\setlength{\abovecaptionskip}{0.cm}
 4   %\setlength{\belowcaptionskip}{-0.cm}
 5    \centering  % 顯示位置為中間
 6    %%\caption{Parameters description}  % 表格標題
 7    %%\label{Table1}  % 用於索引表格的標籤
 8       %字母的個數對應列數,|代表分割線
 9       % l代表左對齊,c代表居中,r代表右對齊
10   \textbf{Table 1}~~Parameters description.\\  %%表的標題
11   \begin{tabular}{p{45pt}llll} %第一列設定寬度為45pt 全為左對齊 沒有分割線
12    %\setlength{\tabcolsep}{20mm}
13    %\hline  % 表格的橫線
14    \toprule % 頂部線
15    Parameters & & Definitions & Value & Source \\%[3pt]只改一行    %%表格第一行標題 % 表格中的內容,用&分開,\\表示下一行
16    %\hline  % 表格的橫線
17    \midrule % 中部線
18    $\beta_{1}$   & & xxxxabcdxxx           & 1 &  Estimation \\    %%表格內容
19    $\beta_{2}$   & & xxxxabcdxxx           & 1 &  Estimation \\
20    $\alpha_{1}$  & & xxxxabcdxxx           & 1 &  Estimation \\
21    $\alpha_{2}$  & & xxxxabcdxxx           & 1 &  Estimation \\
22    \multirow{2}[2]{*}{$\alpha_{3}$} & & aaa1 & \multirow{2}[2]{*}{1} &  \multirow{2}[2]{*}{Estimation} \\
23                  & & bbb2                  &   &             \\
24    \multirow{2}[2]{*}{$\sigma$}     & & aaa1 & \multirow{2}[2]{*}{1} &  \multirow{2}[2]{*}{Estimation} \\
25                  & & bbb2                  &   &             \\
26    $d_{1}$       & & xxxxabcdxxx           & 1 &  Estimation \\
27    $r_{1}$       & & xxxxabcdxxx           & 1 &  Estimation \\
28    $d_{2}$       & & xxxxabcdxxx           & 1 &  Estimation \\
29    $r_{2}$       & & xxxxabcdxxx           & 1 &  Estimation \\
30    \multirow{3}[2]{*}{$\eta(t)$}    & $\eta_{0}$ & aaa1  & 1 &  Estimation \\
31                                     & $\eta_{1}$ & bbb2              & 1 &  Estimation \\
32                                     & $\eta_{2}$ & ccc3              & 1 &  Estimation \\
33    \multirow{3}[2]{*}{$1/\theta(t)$}& $\theta_{0}$ & 1aaa            & 1 &  Estimation \\
34                                     & $\theta_{1}$ & 2bbb            & 1 &  Estimation \\
35                                     & $\theta_{2}$ & 3ccc            & 1 &  Estimation \\
36    \bottomrule % 底部線
37    %\hline  % 表格的橫線
38   \end{tabular}
39  \end{table}

    生成後的表格如下圖所示。

    值得注意的地方有:

  1. 關於表格放置的引數:
    h:放在此處 t:放在頂端 b:放在底端 p:在本頁
  2. 關於表格內容的對齊方式:
    l代表左對齊,c代表居中,r代表右對齊  
  3. 關於表格的列數以及列與列之間是否需要分割線:
    字母的個數對應列數,|代表分割線
  4. 關於表格的邊框:
    \hline  % 表格的橫線
    \toprule % 頂部線
    \midrule % 中部線
    \bottomrule % 底部線 (繪製三線表一般用頂部線、中部線和底部線)
  5. 關於表格中內容過長涉及的換行問題:此時將需要換行的內容分開(如例子中的aaa1bbb2),不需要換行的加上\multirow{所分的行數}[2]{*}{不需要換行的內容} (只用寫一次)。
    \multirow{2}[2]{*}{$\alpha_{3}$} & & aaa1 & \multirow{2}[2]{*}{1} &  \multirow{2}[2]{*}{Estimation} \\
                                     & & bbb2 &                       &                                 \\
  6. 調節行高:
     \renewcommand\arraystretch{1.2}
  7. 調節單列的列寬:
    \begin{tabular}{p{45pt}llll} %第一列設定寬度為45pt
  8. 表格大小調整:如果表格比較大,則可以通過統一縮放的方式調整。(其中h-size和v-size為縮放後目標表格的水平大小、縱向大小,可以填寫具體的數值,如50pt、100mm等。表格中的字型等會像圖片一樣的拉伸。所以調整的時候要注意字型會不會變形失真。)

    \resizebox{h-size}{v-size}{ 
    \begin{tabular}
    ...
    \end{tabular}
    }

相關文章