日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Latex论文表格画法及相关技巧

發布時間:2023/12/15 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Latex论文表格画法及相关技巧 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Latex論文表格畫法

  • 1 基本表格畫法
  • 2 合并表格畫法
  • 3 靈活實現表格

最近畫了很多計算機會議和論文的表格,因此特意在這里做一個記錄,以滿足未來畫基本表格的需要,節省時間。

1 基本表格畫法

  • \begin{table}[htbp] 表示表格的開始。中括號中的 htbp 表示的是表格的浮動格式。當然這個基本參數不僅僅只是對表格有用。需要注意的是,一般使用 [htb] 這樣的組合,這樣組合的意思就是Latex會盡量滿足排在前面的浮動格式,就是 h-t-b 這個順序,讓排版的效果盡量好。
    • [h] 表示將表格放在當前位置。
    • [t] 表示將表格放置在頁面的頂部。
    • [b] 表示將表格放置在頁面的底部。
    • [p] 將表格放置在一只允許有浮動對象的頁面上。
  • \caption{my table} 表示表格的標題,該設置可以放在 \begin{tabular} \end{tabular} 環境的前后,使得表格的標題顯示在表格的上面或下面。\label{table1} 表示表格名字,用于正文中引用表格。
  • 若要插入跨欄圖表, 可以用浮動環境 table*\begin{table}[htbp] 變成 \begin{table*}[htbp]\end{table} 變成 \end{table*}
  • \begin{tabular}[位置]{列}\begin{tabular*}{寬度}[位置]{列} 設置表格環境參數格式。
    • \begin{tabular}{|c|c|c|} 。一個 c 表示有一列,格式為居中顯示,這是列必選參數。通過添加 | 來表示是否需要繪制豎線。|| 表示畫二條緊相鄰的豎直線。
      • l 表示該列左對齊。
      • c 表示該列居中對齊。
      • r 表示該列右對齊。
    • 如果只需要某幾列的寬度發生改變,可以使用 p{寬度} (以 cm 為單位或以 pt 為單位或 0.2\textwidth)來代替 c 參數,但是表格中的文字是默認左對齊的。因此此時可以添加 p{寬度}<{\centering} 來改變文本對齊方式,但此時需要添加包 \usepackage{array} 。在這里 \centering 參數可以被 \raggedleft\raggedright 替換,分別表示為左對齊和右對齊。
    • 也可以使用 tabular*\begin{tabular*}{寬度}[位置]{列})環境參數,如上的 {寬度} 可以設置為 {10cm},表示整個表格的寬度為 10cm。但由于設置了表格的整體寬度,為了使表格對齊,需要使用表達式 @{\extracolsep{\fill}} ,但畫正式表格一般 不推薦 使用這種表格方式(比較復雜,感覺一般用于畫類似三線表格的圖表中),可以通過命令調整整個表格的縮放。
    • \begin{tabular}[位置]{cc}[位置] 中的參數是位置可選參數,該參數表示表格相對于外部文本行基線的位置,又稱為垂直定位參數。一般為默認不設置,表示表格按照外部文本行的基線垂直居中。t表示表格頂部與當前外部文本行的基線重合。b 表示表格底部與當前外部文本行的基線重合。
  • 可用 \setlength{\tabcolsep}{1pt} 來調整表格的列間距離 (十分推薦)
  • 可用 \renewcommand\arraystretch{1.5} 來調整表格行間距,意思是將每一行的高度變為原來的1.5倍 (十分推薦)
  • 如果表格太大,可以使用 \scalebox{1.5} 來對表格進行縮放,意思是將表格的大小變為原來的1.5倍 (十分推薦),使用的時候需要添加包 \usepackage{graphicx}

基本表格畫法如下:

\documentclass{article}\begin{document} \begin{table}[htbp] \caption{my table} \label{table1} %表格名字,用于正文中引用表格 \centering \begin{tabular}{|c|c|c|} \hline (1,1) & (1,2) & (1,3) \\ \hline (2,1) & (2,2) & (2,3) \\ \hline (3,1) & (3,2) & (3,3) \\ \hline (4,1) & (4,2) & (4,3) \\ \hline \end{tabular} \end{table} \end{document}

其實現效果如下:

使用 **\setlength{\tabcolsep}{1pt}{表格}**來調整表格的列間距離,如下所示:

\documentclass{article}\begin{document} \begin{table}[htbp] \caption{my table} \centering \setlength{\tabcolsep}{5mm}{ \begin{tabular}{|c|c|c|} \hline (1,1) & (1,2) & (1,3) \\ \hline (2,1) & (2,2) & (2,3) \\ \hline (3,1) & (3,2) & (3,3) \\ \hline (4,1) & (4,2) & (4,3) \\ \hline \end{tabular}} \end{table}\end{document}

其實現效果如下:

使用 \renewcommand\arraystretch{1.5} 來調整表格行間距,如下所示:

\documentclass{article}\begin{document} \begin{table}[htbp] \caption{my table} \centering \renewcommand\arraystretch{1.5}{ \setlength{\tabcolsep}{5mm}{ \begin{tabular}{|c|c|c|} \hline (1,1) & (1,2) & (1,3) \\ \hline (2,1) & (2,2) & (2,3) \\ \hline (3,1) & (3,2) & (3,3) \\ \hline (4,1) & (4,2) & (4,3) \\ \hline \end{tabular}}} \end{table}\end{document}

其實現效果如下:

使用 \scalebox{1.5} 來對表格進行縮放,如下所示:

\documentclass{article} \usepackage{graphicx} %需要添加的包\begin{document} \begin{table}[htbp] \caption{my table} \centering \scalebox{1.5}{ \renewcommand\arraystretch{1.5}{ \setlength{\tabcolsep}{5mm}{ \begin{tabular}{|c|c|c|} \hline (1,1) & (1,2) & (1,3) \\ \hline (2,1) & (2,2) & (2,3) \\ \hline (3,1) & (3,2) & (3,3) \\ \hline (4,1) & (4,2) & (4,3) \\ \hline \end{tabular}}}} \end{table}\end{document}

其實現效果如下:

使用 p{寬度}<{\centering} 情況如下所示:

\documentclass{article} \usepackage{array} %需要添加的包\begin{document} \begin{table}[htbp] \caption{my table} \centering \begin{tabular}{|p{1cm}<{\centering}|p{2cm}<{\centering}|p{3cm}<{\centering}|} \hline (1,1) & (1,2) & (1,3) \\ \hline (2,1) & (2,2) & (2,3) \\ \hline (3,1) & (3,2) & (3,3) \\ \hline (4,1) & (4,2) & (4,3) \\ \hline \end{tabular} \end{table}\end{document}

其實現效果如下:

使用 \begin{tabular*}{寬度}[位置]{列} 情況如下所示:

\documentclass{article} \usepackage{array} %需要添加的包\begin{document} \begin{table}[htbp] \caption{my table} \centering \def\temptablewidth{0.6\textwidth} {\rule{\temptablewidth}{1pt}} %根據使用情況靈活設置,線的粗細 \begin{tabular*}{\temptablewidth}{@{\extracolsep{\fill}}ccccc} \hline &(1,1)&(1,2)&(1,3)&\\ \hline &(2,1)&(2,2)&(2,3)&\\ \hline &(3,1)&(3,2)&(3,3)&\\ \hline &(4,1)&(4,2)&(4,3)&\\ \hline \end{tabular*} {\rule{\temptablewidth}{1pt}} \end{table}\end{document}

其實現效果如下:

2 合并表格畫法

如下是表格中一些橫線的畫法(Tips: 如下表格中的(1,1)代表該格子在整個表格中的位置,有助于我們畫表格):

  • \hline:這條命令只能位于第一行前面或緊接在行結束命令\的后面,表示在剛結束的那一行畫一根水平的直線,橫線的寬度與表格的寬度相同,放在一起的兩條水平\hline命令就會畫出兩條間隔很小的水平線。
  • \cline{n-m}:這條命令在一行中可以出現多次。該命令從第n列的左邊開始,畫一條到第m列右邊結束的水平線,對應前面的列數。
\documentclass{article} \begin{document} \begin{table}[htbp] \caption{my table} \centering \renewcommand\arraystretch{1.5}{ \setlength{\tabcolsep}{5mm}{ \begin{tabular}{|c|c|c|} \hline (1,1) & (1,2) & (1,3) \\ \hline (2,1) & (2,2) & (2,3) \\ \cline{2-3} (3,1) & (3,2) & (3,3) \\ \cline{1-1} \cline{3-3} (4,1) & (4,2) & (4,3) \\ \hline \end{tabular}}} \end{table}\end{document}

其實現效果如下所示:

為了得到合并的格子,可以通過命令 \multicolumn\multirow 進行合并單元格。需要引入包 \usepackage{multirow} 。其一般的參數使用方法如下。更詳細可以參考LaTex表格繪制的小技巧。

  • \multicolumn{參數1}{參數2}{參數3}
    • 參數1 表示要將整個單元格分成多少列
    • 參數2 表示對齊方式
    • 參數3 表示這個單元格的內容
  • \multirow{參數1}{參數2}{參數3}
    • 參數1 表示要將整個單元格分成多少行
    • 參數2 表示對齊方式
    • 參數3 表示這個單元格的內容

\multicolumn{2}{|c|}{multi col} 指的是這個單元格占兩列,表格中的內容居中表示,填充內容為multi col,并在該單元格左右畫倆條豎線(原始的 tabular 中設置的 |c| 的兩邊的豎線會消失)。
\multirow{2}*{multi row} 指的是這個單元格占兩行,填充內容為multi row,參數2 是文本所在列的寬度。它可以用*取代,表示用文本的自然寬度作為列的寬度,當使用*的時候不需要打括號。
\multicolumn{2}{c|}{\multirow{2}{*}{multi col row}} 指的是這個單元格占兩行,同時也占兩列。如果 \multirow 前面沒有 \multicolumn 的話,默認就是只占一列。注意:對應未填入的格子需要進行填充。若為多行單列,只需要把該位置空出來即可。當為多行多列的時候,下一行需要使用類似 \multicolumn{2}{c}{} 的語句對多列進行填充。

\documentclass{article} \usepackage{multirow} \begin{document} \begin{table}[htbp] \caption{my table} \centering \renewcommand\arraystretch{1.5}{ \setlength{\tabcolsep}{5mm}{ \begin{tabular}{|c|c|c|c|c|c|} \hline \multicolumn{2}{|c|}{\multirow{2}*{multi col row}} &\multicolumn{3}{|c|}{multi col} & \multirow{2}{*}{multi row}\\ \cline{3-5} \multicolumn{2}{|c|}{} & (2,3) & (2,4) & (2,5) & \\ \hline \multirow{3}{*}{multi row} & (3,2) & (3,3) & (3,4) & (3,5) & (3,6)\\ \cline{2-6}& (4,2) & (4,3) & (4,4) & (4,5) & (4,6)\\ \cline{2-6}& (5,2) & (5,3) & (5,4) & (5,5) & (5,6)\\ \hline \end{tabular}}} \end{table}\end{document}

其實現效果如下:

若要使用斜線表頭,需要使用 \diagbox 命令,需要添加包 \usepackage{diagbox}\diagbox[innerwidth=3.3cm]{A}{B}} 中的 [innerwidth=3.3cm] 取決于列寬度的大小。

\documentclass{article} \usepackage{multirow} \usepackage{diagbox} \begin{document} \begin{table}[htbp] \caption{my table} \centering \renewcommand\arraystretch{1.5}{ \setlength{\tabcolsep}{5mm}{ \begin{tabular}{|c|c|c|c|c|c|} \hline \multicolumn{2}{|c|}{\multirow{2}*{\diagbox[innerwidth=3.3cm]{A}{B}}} &\multicolumn{3}{c|}{multi col} & \multirow{2}{*}{multi row}\\ \cline{3-5} \multicolumn{2}{|c|}{} & (2,3) & (2,4) & (2,5) & \\ \hline \multirow{3}{*}{multi row} & (3,2) & (3,3) & (3,4) & (3,5) & (3,6)\\ \cline{2-6}& (4,2) & (4,3) & (4,4) & (4,5) & (4,6)\\ \cline{2-6}& (5,2) & (5,3) & (5,4) & (5,5) & (5,6)\\ \hline \end{tabular}}} \end{table}\end{document}

其實現效果如下所示:

3 靈活實現表格

因為有些需求,需要在論文模板中靈活實現一個表格,但能實現就行。~~~ / / / ( ^ v ^ ) \ \ \~~~。

\documentclass{article} \usepackage{multirow} \usepackage{diagbox} \usepackage{graphicx} \usepackage{booktabs} \begin{table*}[t]\setlength{\abovecaptionskip}{0.cm}\setlength{\belowcaptionskip}{-0.cm}\caption{Average search time (s)}\label{TAB1}\centering\scalebox{0.85}{\begin{tabular}{c|c|c|c|c|c|c|c|c|c|c|c|c|c}\cline{2-13}\multirow{2}*{}&\multicolumn{2}{c|}{\multirow{2}*{\# of people}}& \multicolumn{10}{c|}{Date}& \\\cline{4-13}&\multicolumn{2}{c|}{}&2016/2/8&2016/2/16&2016/3/10&2016/3/18&2016/4/6&2016/4/22&2016/5/11&2016/5/15&2016/6/2&2016/6/25\\\cline{2-13}&\multirow{2}*{5000}&Random&0&0&0&0&0&0&0&0&0&0\\\cline{3-13}&\multicolumn{1}{c|}{}&Our&0&0&0&0&0&0&0&0&0&0\\\cline{2-13}&\multirow{2}*{6000}&Random&0&0&0&0&0&0&0&0&0&0\\\cline{3-13}&\multicolumn{1}{c|}{}&Our&0&0&0&0&0&0&0&0&0&0\\\cline{2-13}&\multirow{2}*{7000}&Random&0&0&0&0&0&0&0&0&0&0\\\cline{3-13}&\multicolumn{1}{c|}{}&Our&0&0&0&0&0&0&0&0&0&0\\\cline{2-13}\specialrule{0em}{1pt}{2pt}\hline\specialrule{0em}{1pt}{1pt}\cline{2-13}&\multirow{2}*{8000}&Random&0&0&0&0&0&0&0&0&0&0\\\cline{3-13}&\multicolumn{1}{c|}{}&Our&0&0&0&0&0&0&0&0&0&0\\\cline{2-13}&\multirow{2}*{9000}&Random&0&0&0&0&0&0&0&0&0&0\\\cline{3-13}&\multicolumn{1}{c|}{}&Our&0&0&0&0&0&0&0&0&0&0\\\cline{2-13}&\multirow{2}*{10000}&Random&0&0&0&0&0&0&0&0&0&0\\\cline{3-13}&\multicolumn{1}{c|}{}&Our&0&0&0&0&0&0&0&0&0&0\\\cline{2-13}\end{tabular}} \end{table*}

其實現效果如下:

總結

以上是生活随笔為你收集整理的Latex论文表格画法及相关技巧的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。