天天看點

latex 1圖加标題_還在手寫LaTeX表格?你可能需要這款神器

latex 1圖加标題_還在手寫LaTeX表格?你可能需要這款神器

既然你點進來看了,說明你也遇到了類似的問題,也經曆過手寫和調試LaTeX表格的痛苦,現在就讓我們解決它。

LaTeX是一種排版工具(語言),我們可以通過編寫文本檔案來實作各種需要格式化的正文、公式、表格甚至是圖像,通過LaTeX的工具直接編譯生成pdf檔案,而不用花過多的時間來調整文章的格式。但缺點是,當我們編寫檔案比較大時,往往這個編譯過程是很費時間的,可能你改完了一個小地方,要等待編譯完成才能看到改完的效果,非常不直覺。

本文不是LaTeX軟文,不打算推銷LaTeX,但是用過的人都說好,用過的人也幾乎都遇到過标題中的這個問題,有的可能自己采用某種方式解決了,有的可能仍舊處于“改文章->編譯->檢視結果->改文章->編譯->檢視結果->改文章 ...”這樣的循環中。

我最常用的編寫調試LaTeX的工具是Sublime+TeXLive+SumatraPDF,支援Vim模式,支援從Pdf檔案輕按兩下跳轉回tex源檔案等操作。作為一個經常熬夜加班寫論文的人,我也曾經在無數個月黑風高的夜晚,因為調試論文中的LaTex表格而手腳抽筋,難以入睡。

數學公式這麼複雜的編輯過程,LaTeX配合Sublime及公式預覽編輯器都能做到一邊寫公式一邊預覽了。對于表格來說,應該更簡單直覺才對呀,LaTex有沒有原生提供一種方式來快速直覺的制作和編輯複雜的表格呢?答案是沒有。可能是由于LaTeX太老了,也可能是我見識太少,但是目前為止我還沒有發現。

1. 編輯表格的需求

我們在做表格時會有哪些需求呢?

  • 多排表頭
  • 複雜文字斷行
  • 多個單元格合并
  • 調整表格中的文字朝向
  • 對表格的各個部分增加顔色以區分
  • 表格中的一部分需要畫網格線,其他部分又不想要網格線,而且還想用不同線型。
  • ......

如果要完成一個比較大且複雜的表格,你用原生的LaTeX寫一寫試試?

如果以前你沒有找到解決辦法,那麼你非常幸運,從看到本文開始就有了。可能有人嘗試過一些線上的工具,但是我嘗試完以後發現還是這個工具有效,畢竟可以依靠Excel的強大來随心所欲制作表格。

2. Excel的插件“Excel2LaTeX”

在實際工作生活中,我們做表格類型的資料記錄時大家最常用的是微軟提供的Excel(用WPS和其他工具的童鞋就當我沒說過)。這類工具提供一種所見即所得的方法來讓我們可以直覺的編輯和操作表格,能不能開發一種工具可以将Excel的表格直接導出為LaTeX語言呢?有,它就是Excel2LaTeX(下載下傳方式見文末),一個可以将Excel表格轉換為LaTeX的插件。

2.1 安裝方式

下載下傳安裝時要注意,官方說明,Excel2LaTeX隻支援Windows Excel200-2016,32bit和64bit的都支援,Mac Excel 2004, 2011和2016。其他版本的Excel可能存在問題,我電腦上使用的是Windows Excel2013和Excel2016,目前均可以使用。

2.1.1 下載下傳位址見文末。下載下傳完成以後會得到一個字尾名為.zip的壓縮檔案:

latex 1圖加标題_還在手寫LaTeX表格?你可能需要這款神器

2.1.2 直接解壓此檔案,可以看到如下内容:

latex 1圖加标題_還在手寫LaTeX表格?你可能需要這款神器

2.1.3 打開電腦裡面的Excel軟體,建立一個空白頁面,直接滑鼠左鍵選擇Excel2LaTeX.xla,并拖動上述文到Excel頁面上即可:

latex 1圖加标題_還在手寫LaTeX表格?你可能需要這款神器

如果Excel彈出如下界面,則點選“啟用宏”即可。

latex 1圖加标題_還在手寫LaTeX表格?你可能需要這款神器

然後就安裝完成了,在Excel的菜單欄點選“附加元件”,如果看到下面的插件名字,就說明安裝成功了。

latex 1圖加标題_還在手寫LaTeX表格?你可能需要這款神器

2.2 使用方法

使用方法也非常簡單,首先通過Excel建立表格,填充資料,調整格式:

latex 1圖加标題_還在手寫LaTeX表格?你可能需要這款神器

然後滑鼠選中要轉換的表格内容,點選菜單欄的 附加元件->Convert Table to LaTeX:

latex 1圖加标題_還在手寫LaTeX表格?你可能需要這款神器

然後會彈出下列視窗,其内容就是我們需要的LaTeX語句了,可以選擇複制到剪貼闆或者儲存為檔案。

latex 1圖加标題_還在手寫LaTeX表格?你可能需要這款神器

2.3 實際效果

上述Demo生成的代碼如下。另外,你可能需要如下代碼裡面所示的幾個package,記得添加到你的.tex檔案中:

documentclass{article}

usepackage{multirow}
usepackage{booktabs}
usepackage{bigstrut}
usepackage{hyperref}
usepackage[table]{xcolor}

begin{document}

% Table generated by Excel2LaTeX from sheet 'Sheet1'
begin{table}[htbp]
  centering
  caption{Add caption}
    begin{tabular}{|l|r|r|r|c|}
    toprule
    multicolumn{1}{|c|}{multirow{2}[4]{*}{Index}} & multicolumn{2}{c|}{textbf{Class 1}} & multicolumn{2}{c|}{textbf{Class 2}} 
cmidrule{2-5}          & multicolumn{1}{c|}{1} & multicolumn{1}{c|}{2} & multicolumn{1}{c|}{1} & 2 
    midrule
    A     &       &       & multicolumn{1}{l|}{x1} &  
cmidrule{1-3}cmidrule{5-5}    B     & multicolumn{1}{l|}{cellcolor[rgb]{ 1,  1,  0} tmp_1} &       & multicolumn{1}{l|}{x2} & multirow{3}[6]{*}{tmp_3} 
cmidrule{1-4}    C     &       & multicolumn{1}{l|}{cellcolor[rgb]{ .557,  .663,  .859} tmp_2} &       &  
cmidrule{1-4}          &       &       &       &  
    bottomrule
    end{tabular}%
  label{tab:addlabel}%
end{table}%


end{document}
           

編譯完成的實際效果:

latex 1圖加标題_還在手寫LaTeX表格?你可能需要這款神器

另附一些官方提供的Demo,此插件可以生成多種多樣的表格,可謂神器。

latex 1圖加标題_還在手寫LaTeX表格?你可能需要這款神器

3. 擷取方式

  • (1) Github下載下傳位址:

Github下載下傳位址​github.com

  • (2) 掃描下方二維碼,關注本公衆号,背景回複【table】即可直接擷取網盤下載下傳連結。
latex 1圖加标題_還在手寫LaTeX表格?你可能需要這款神器

繼續閱讀