zoukankan      html  css  js  c++  java
  • LaTeX 表格


    本系列文章由 @YhL_Leo 出品,转载请注明出处。
    文章链接: http://blog.csdn.net/yhl_leo/article/details/50066137


    一些LaTeX中表格的使用方法如下:

    1.table

    documentclass{article}
    
    egin{document}
    
        egin{table}[h]
    		centering
    		egin{tabular}{|l|c|c|}hline
    			Setting&multicolumn{2}{c|}{A4 size paper}\hline
    			&mm&inches\
    			Top&25&1.0\
    			Bottom&25&1.0\
    			Left&20&0.8\
    			Right&20&0.8\
    			Column Width&82&3.2\
    			Column Spacing&6&0.25\hline
    		end{tabular}
    		caption{Margin settings for A4 size paper}
    		label{tab:Margin_settings}
    	end{table}
    
    end{document}




    2.tabular

    egin{tabular}{|c|c|c|}
    	hline 2&9&4\
    	hline 7&5&3\
    	hline 6&1&8\
    	hline
    end{tabular}




    例子里面的|c|这样的,那个地方叫做导言区,来约定表格的每列属性的:

    l
    left-justified column
    c
    centered column
    r
    right-justified column
    b
    bottom
    c
    center (default)
    t
    top
    p{'width'}
    paragraph column with text vertically aligned at the top
    m{'width'}
    paragraph column with text vertically aligned in the middle (requires array package)
    b{'width'}
    paragraph column with text vertically aligned at the bottom (requires array package)
    |
    vertical line
    ||
    double vertical line

    另外,还有一些常用的命令

    &
    column separator
    \
    start new row (additional space may be specified after \ using square brackets, such as \[6pt]
    hline
    horizontal line
    ewline
    start a new line within a cell (in a paragraph column)
    abularnewline
    start a new line within a cell (in a paragraph column) instead of \ to avoid a Misplaced oalign error in the tabular
    cline{i-j}
    partial horizontal line beginning in column i and ending in column j

    除了最简单的用例外,还可以这样:

    % example 1:
    egin{center}
    	egin{tabular}{ | l || c || r }
    		hline
    		1 & 2 & 3 \ hline
    		4 & 5 & 6 \ hline hline
    		7 & 8 & 9 \
    		hline
    	end{tabular}
    end{center}



    example 1

    % example 2:
    %multicolumn{n}{format}{item}
    egin{tabular}{|c|c|c|}
    	hline multicolumn{3}{|c|}{?}\
    	hline 7&5&3\
    	hline 6&1&8\
    	hline
    end{tabular}



    example 2

    % example 3:
    egin{tabular}{|r|l|}
    	hline
    	7C0 & hexadecimal \
    	3700 & octal \ cline{2-2}
    	11111000000 & binary \
    	hline hline
    	1984 & decimal \
    	hline
    end{tabular}



    example 3


    array环境中(使用时需要包含:usepackage{array}),重新实现了tabular环境,加了不少新选项进去:



    对于tabular的第一个例子略作修改,可以发现在不含有array包和含有时效果是不一样的:

    % example 1:
    %usepackage{array}
    	abcolsep20pt
    arrayrulewidth2pt
    egin{tabular}{*{3}{|c}|}
    %egin{tabular}{|c|c|c|}
    	hline 2&9&4\
    	hline 7&5&3\
    	hline 6&1&8\
    	hline
    end{tabular}
    
    % example 2:
    ...
    usepackage{array}
    ...
    
    	abcolsep20pt
    arrayrulewidth2pt
    egin{tabular}{*{3}{|c}|}
    %egin{tabular}{|c|c|c|}
    	hline 2&9&4\
    	hline 7&5&3\
    	hline 6&1&8\
    	hline
    end{tabular}



    example 1



    example 2


    对于表格内有长文本时,直接排下来不但很难看而且很容超出页面的范围,可以这么做:

    Without specifying width for last column:
    egin{center}
        egin{tabular}{| l | l | l | l |}
        hline
        Day & Min Temp & Max Temp & Summary \ hline
        Monday & 11C & 22C & A clear day with lots of sunshine.
        However, the strong breeze will bring down the temperatures. \ hline
        Tuesday & 9C & 19C & Cloudy with rain, across many northern regions. Clear spells 
        across most of Scotland and Northern Ireland, 
        but rain reaching the far northwest. \ hline
        Wednesday & 10C & 21C & Rain will still linger for the morning. 
        Conditions will improve by early afternoon and continue 
        throughout the evening. \
        hline
        end{tabular}
    end{center}
    
    With width specified:
    egin{center}
        egin{tabular}{ | l | l | l | p{5cm} |}
        hline
        Day & Min Temp & Max Temp & Summary \ hline
        Monday & 11C & 22C & A clear day with lots of sunshine.  
        However, the strong breeze will bring down the temperatures. \ hline
        Tuesday & 9C & 19C & Cloudy with rain, across many northern regions. Clear spells 
        across most of Scotland and Northern Ireland, 
        but rain reaching the far northwest. \ hline
        Wednesday & 10C & 21C & Rain will still linger for the morning. 
        Conditions will improve by early afternoon and continue 
        throughout the evening. \
        hline
        end{tabular}
    end{center}



    另外使用宏包tabulary也可以实现:

    usepackage{tabulary}
    ...
    
    egin{center}
      egin{tabulary}{0.7	extwidth}{LCL}
        Short sentences      & #  & Long sentences                                                 \
        hline
        This is short.       & 173 & This is much loooooooonger, because there are many more words.  \
        This is not shorter. & 317 & This is still loooooooonger, because there are many more words. \
      end{tabulary}  
    end{center}


    其中的对齐方式除了L,C外,还有R,J


    让我们看下parbox的用法,如果我们想把文段分割成为表的形式:

    egin{tabular}{cc}
      boring cell content & parbox[t]{5cm}{rather long par\new par}
    end{tabular}




    调整行列间距可以使用命令:

    setlength{	abcolsep}{5pt} %colums, default value is 6pt
    
    
    enewcommand{arraystretch}{1.5} %rows, default value is 1.0

    另外一种方式是在hlinecline{i-j}后添加 oalign{smallskip}, 例如:

    egin{center}
    
        egin{tabular}{ | l | l | r | }
    		hline
    		multicolumn{2}{c}{Item} \
    		cline{1-2}
    		Animal & Description & Price ($) \
    		hline
    		Gnat  & per gram & 13.65 \
    		& each     &  0.01 \
    		Gnu   & stuffed  & 92.50 \
    		Emu   & stuffed  & 33.33 \
    		Armadillo & frozen & 8.99 \
    		hline
    	end{tabular}
    
        example 1
    
        $ $
    
        setlength{	abcolsep}{4pt}
        egin{tabular}{ | l | l | r | }
    		hline
    		multicolumn{2}{c}{Item} \
    		cline{1-2}
    		Animal & Description & Price ($) \
    		hline
    		Gnat  & per gram & 13.65 \
    		& each     &  0.01 \
    		Gnu   & stuffed  & 92.50 \
    		Emu   & stuffed  & 33.33 \
    		Armadillo & frozen & 8.99 \
    		hline
    	end{tabular}
    
        example 2
    
        $ $
    
        
    enewcommand{arraystretch}{1.5}
        egin{tabular}{ | l | l | r | }
    		hline
    		multicolumn{2}{c}{Item} \
    		cline{1-2}
    		Animal & Description & Price ($) \
    		hline
    		Gnat  & per gram & 13.65 \
    		& each     &  0.01 \
    		Gnu   & stuffed  & 92.50 \
    		Emu   & stuffed  & 33.33 \
    		Armadillo & frozen & 8.99 \
    		hline
    	end{tabular}
    
        example 3
    
        $ $
    
        setlength{	abcolsep}{6pt}
        
    enewcommand{arraystretch}{1.0}
        egin{tabular}{ | l | l | r | }
    		hline
    oalign{smallskip}
    		multicolumn{2}{c}{Item} \
    		cline{1-2}
    oalign{smallskip}
    		Animal & Description & Price ($) \
    		
    oalign{smallskip}hline
    oalign{smallskip}
    		Gnat  & per gram & 13.65 \
    		& each     &  0.01 \
    		Gnu   & stuffed  & 92.50 \
    		Emu   & stuffed  & 33.33 \
    		Armadillo & frozen & 8.99 \
    		
    oalign{smallskip}hline
    	end{tabular}
    
        example 4
    
    end{center}



    其他用法如在某一行后空出一定间距:

    egin{tabular}{ll}
    	hline
    	Mineral & Color \[0.5cm]
    	Ruby & red \
    	Sapphire & blue \
    	hline
    end{tabular}




    一些LaTeX的环境也可以插入表格中:

    egin{tabular}{m{5cm} c} % here the m can be replaced by p or b.
    	\ hline
    	egin{verbatim}
    		I love coding
    	end{verbatim}
    	& LaTeX
    	\ hline
    end{tabular}



    使用列规格设置命令:>{cmd} and <{cmd},如设置表格中的字符都是数学手写字体:

    ...
    usepackage{array}
    ...
    
    
    ewcolumntype{F}{>{$}c<{$}}
    egin{tabular}{FFF}
    	alpha & eta    & gamma   \
    	delta & epsilon & upsilon \
    	sigma & 	au     & phi     \
    end{tabular}




    @-expressions的用法:

    egin{tabular}{|@{}l|l@{}|}
      hline
      stuff & stuff \ hline
      stuff & stuff \
      hline
    end{tabular}
    
    egin{tabular}{r@{.}l}
      3   & 14159 \
      16  & 2     \
      123 & 456   \
    end{tabular}




    行的特别设置,给出几个例子:

    egin{tabular}{ |l|l| }
      hline
      multicolumn{2}{|c|}{Team sheet} \
      hline
      GK & Paul Robinson \
      LB & Lucas Radebe \
      DC & Michael Duberry \
      DC & Dominic Matteo \
      RB & Dider Domi \
      MC & David Batty \
      MC & Eirik Bakke \
      MC & Jody Morris \
      FW & Jamie McMaster \
      ST & Alan Smith \
      ST & Mark Viduka \
      hline
    end{tabular}



    ...
    usepackage{multirow}
    ...
    
    egin{tabular}{ |l|l|l| }
    	hline
    	multicolumn{3}{ |c| }{Team sheet} \
    	hline
    	Goalkeeper & GK & Paul Robinson \ hline
    	multirow{4}{*}{Defenders} & LB & Lucas Radebe \
    	 & DC & Michael Duburry \
    	 & DC & Dominic Matteo \
    	 & RB & Didier Domi \ hline
    	multirow{3}{*}{Midfielders} & MC & David Batty \
    	 & MC & Eirik Bakke \
    	 & MC & Jody Morris \ hline
    	Forward & FW & Jamie McMaster \ hline
    	multirow{2}{*}{Strikers} & ST & Alan Smith \
    	 & ST & Mark Viduka \
    	hline
    end{tabular}



    ...
    usepackage{multirow}
    ...
    
    egin{tabular}{cc|c|c|c|c|l}
    	cline{3-6}
    	& & multicolumn{4}{ c| }{Primes} \ cline{3-6}
    	& & 2 & 3 & 5 & 7 \ cline{1-6}
    	multicolumn{1}{ |c  }{multirow{2}{*}{Powers} } &
    	multicolumn{1}{ |c| }{504} & 3 & 2 & 0 & 1 &     \ cline{2-6}
    	multicolumn{1}{ |c  }{}                        &
    	multicolumn{1}{ |c| }{540} & 2 & 3 & 1 & 0 &     \ cline{1-6}
    	multicolumn{1}{ |c  }{multirow{2}{*}{Powers} } &
    	multicolumn{1}{ |c| }{gcd} & 2 & 2 & 0 & 0 & min \ cline{2-6}
    	multicolumn{1}{ |c  }{}                        &
    	multicolumn{1}{ |c| }{lcm} & 3 & 3 & 1 & 1 & max \ cline{1-6}
    end{tabular}



    egin{tabular}{ r|c|c| }
    	multicolumn{1}{r}{}
    	 &  multicolumn{1}{c}{noninteractive}
    	 & multicolumn{1}{c}{interactive} \
    	cline{2-3}
    	massively multiple & Library & University \
    	cline{2-3}
    	one-to-one & Book & Tutor \
    	cline{2-3}
    end{tabular}




    3.booktabs

    三线表

    usepackage{booktabs}
    
    egin{tabular}{ccc}
    		oprule
    		2&9&4\
    	midrule
    		7&5&3\
    		6&1&8\
    	ottomrule
    end{tabular}




    4.colortbl

    常用的表格填色colortbl包:

    % example 1:
    usepackage{colortbl}
    
    egin{tabular}{ccc}
    	
    owcolor[gray]{.9}
    		2&9&4\
    	
    owcolor[gray]{.8}
    		7&5&3\
    	
    owcolor[gray]{.7}
    		6&1&8\
    end{tabular}



    example 1

    % example 2:
    egin{tabular}
    	{>{columncolor[gray]{.9}}c|
    		>{columncolor[gray]{.8}}c|
    		>{columncolor[gray]{.7}}c}
    	2&9&4\
    	7&5&3\
    	6&1&8\
    end{tabular}



    example 2

    %example 3:
    egin{tabular}{ccc}
    	cellcolor[rgb]{.9,.9,.9}2&
    	cellcolor[rgb]{.8,.9,.9}9&
    	cellcolor[rgb]{.7,.9,.9}4\
    	cellcolor[rgb]{.9,.8,.9}7&
    	cellcolor[rgb]{.8,.8,.9}5&
    	cellcolor[rgb]{.7,.8,.9}3\
    	cellcolor[rgb]{.9,.7,.9}6&
    	cellcolor[rgb]{.8,.7,.9}1&
    	cellcolor[rgb]{.7,.7,.9}8\
    end{tabular}



    example 3


    5.diagbox

    画斜线表头的包diagbox

    usepackage{diagbox}
    ...
    
    egin{tabular}{|l|ccc|}
    hline
    diagbox{Time}{Room}{Day} & Mon & Tue & Wed \
    hline
    Morning & used & used & \
    Afternoon & & used & used \
    hline
    end{tabular}

    参考:

  • 相关阅读:
    New version of VS2005 extensions for SharePoint 3.0
    QuickPart : 用户控件包装器 for SharePoint Server 2007
    随想
    发布 SharePoint Server 2007 Starter Page
    如何在SharePoint Server中整合其他应用系统?
    Office SharePoint Server 2007 中文180天评估版到货!
    RMS 1.0 SP2
    SharePoint Server 2007 Web内容管理中的几个关键概念
    如何为已存在的SharePoint站点启用SSL
    Some update information about Office 2007
  • 原文地址:https://www.cnblogs.com/hehehaha/p/6332214.html
Copyright © 2011-2022 走看看