LaTeX 表格处理概述
一般三线表的处理
带表格注释的三线表
固定列宽和自动伸缩列宽
固定列宽与对齐方式
自动伸缩列宽
跨页表格
表格旋转和后置
表格旋转
表格后置
辅助转换工具
表格居中
LaTeX 表格处理概述
与 word 不同,LaTeX 通过一定的语法规则将表格写成纯文本形式。基本规则包括:表格从上到下,每一行从左到右,单元格内容使用 & 分隔,用 \\ 换行。最基本的表格环境是 tabular 环境。下面是一个简单的表格代码和实际效果:
\begin{tabular}[t]{l|c}
\hline
姓名 & 年龄 \\
\hline
张三 & 32 \\
李四 & 12 \\
王五 & 24 \\
\hline
\end{tabular}
一般三线表的处理
学术论文普遍使用三线表。三线表的特点主要是:整个表格通常只有三条横线,首尾两条横线较粗,中间一条较细,一般不使用竖线。LaTeX 处理三线表相当简单方便。用到的宏包主要是 booktabs 。下面是普通三线表的代码和效果:
\begin{table}[htbp]
\caption{\label{tab:test}示例表格}
\begin{tabular}{lcl}
\toprule
姓名 & 年龄 & 地址\\
\midrule
张三 & 32 & 中华人民共和国\\
李四 & 12 & 中华人民共和国\\
王五 & 24 & 中华人民共和国\\
\bottomrule
\end{tabular}
\end{table}
带表格注释的三线表
三线表有时候还需要加上注释以便给出表格的资料来源等信息。解决这一问题可以使用下面三个办法之一:
使用 ctable 宏包。该宏包用法简单,下面是典型代码和效果:
\ctable[%
caption=The Skewing Angles,
label=tab:nowidth,
]{lcc}
{\tnote{for the abstraction reaction,
$Mu+HX \rightarrow MuH+X$.}
\tnote[b]{1 degree${} = \pi/180$ radians.}
\tnote[c]{this is a particularly long note, showing that footnotes
are set in raggedright mode as we don't like hyphenation
in table footnotes.}
}
{\FL & $H(Mu)+F_2$ & $H(Mu)+Cl_2$ \ML
$\beta$(H) & $80.9$\tmark[b] & $83.2$ \NN
$\beta$(Mu) & $86.7$ & $87.7$ \LL
}
使用 threeparttable 宏包。下面是典型代码和效果:
\begin{table}[htbp]
\centering\small
\begin{threeparttable}
\caption{\label{tab:results}Effect of Trade Openness on
Environment (Air Pollution)}
\begin{tabular}{lccc}
\toprule
& NO$_2$ & SO$_2$ & PM \\
\midrule
$\ln(y/pop)$ & 408.74* & 287.25* & 566.65 \\
& (121.79) & (118.81) & (336.19) \\
$\ln(y/pop)^2$ & $-$22.85* & $-$16.58* & $-$35.57** \\
& (6.90) & (6.78) & (19.06) \\
$(X+M)/Y$ & $-$.29** & $-$.31* & $-$.37 \\
& (.17) & (.08) & (.34) \\
$Polity$ & $-$3.20* & $-$6.58* & $-$6.70** \\
& (1.47) & (2.05) & (3.42) \\
$\ln(LandArea/pop)$ & $-$5.94 & $-$2.92* & $-$13.02* \\
& (5.93) & (1.39) & (6.29) \\
Obs. & 36 & 41 & 38 \\
$R^2$ & 0.16 & 0.68 & 0.62 \\
\bottomrule
\end{tabular}
\small
Note: Robust standard errors in parentheses. Intercept
included but not reported.
\begin{tablenotes}
\item
significant at 5\% level
\item[**] significant at 10\% level
\end{tablenotes}
\end{threeparttable}
\end{table}
固定列宽和自动伸缩列宽
有时三线表需要固定某列的列宽,或者指定整个表格的总宽度,指定某几列自动伸缩。
固定列宽与对齐方式
固定列宽可以使用 array 宏包的 p{2cm} 系列命令,如果需要指定水平对齐方式,可以使用下面的形式 >{\centering}p{2cm} 实现,但如果使用这种方式,缺省情况下不能使用 \\ 换行,需要使用 \tabularnewline 代替。为了仍然使用 \\ 换行,需要在导言区加上下面的代码:
\usepackage{array}
\newcommand{\PreserveBackslash}[1]{\let\temp=\\#1\let\\=\temp}
\newcolumntype{C}[1]{>{\PreserveBackslash\centering}p{#1}}
\newcolumntype{R}[1]{>{\PreserveBackslash\raggedleft}p{#1}}
\newcolumntype{L}[1]{>{\PreserveBackslash\raggedright}p{#1}}
使用 C{3cm} 命令即可指定该列宽度为 3cm,并且文字居中对齐,左对齐和右对齐命令分别是 L{2cm} 和 R{2cm} 。
下面是一个的例子:
\begin{table}[htbp]
\centering\caption{\label{tab:test}2000 和~2004 年中国制造业产品的出口份额}
\begin{tabular}{l*{2}{R{2cm}}}
\toprule
& 2000 & 2004 \\
\midrule
钢铁 & 3.1 & 5.2 \\
化学制品 & 2.1 & 2.7 \\
办公设备及电信设备 & 4.5 & 15.2 \\
汽车产品 & 0.3 & 0.7 \\
纺织品 & 10.4 & 17.2 \\
服装 & 18.3 & 24\\
\bottomrule
\end{tabular}
\end{table}
自动伸缩列宽
使用 tabularx 宏包可以实现自动伸缩列宽。下面是一个简单的例子。与普通的 tabular 环境不同之处在于:(1)需要指定整个表格的总宽度;(2)需要用 X 指定至少一列为自动伸缩列。
\begin{table}[htbp]
\centering\caption{\label{tab:test}2000 和~2004 年中国制造业产品的出口份额}
\begin{tabularx}{10cm}{Xrr}
\toprule
& 2000 & 2004 \\
\midrule
钢铁 & 3.1 & 5.2 \\
化学制品 & 2.1 & 2.7 \\
办公设备及电信设备 & 4.5 & 15.2 \\
汽车产品 & 0.3 & 0.7 \\
纺织品 & 10.4 & 17.2 \\
服装 & 18.3 & 24\\
\bottomrule
\end{tabularx}
\end{table}
跨页表格
普通的表格不能跨页。如果需要跨页表格,需要使用 longtable 或 supertabular 等宏包。此处以 longtable 为主介绍。
下面是一个例子。
\begin{longtable}{p{1.2cm}p{8cm}p{5cm}}
\caption{\label{tab:test}WTO 英语缩写}\\
\toprule
缩写 & 原\hspace{1em}文 & 解\hspace{1em}释\\
\midrule
\endfirsthead
{\bf 续表~\ref{tab:test}}\\
\toprule
缩写 & 原\hspace{1em}文 & 解\hspace{1em}释\\
\midrule
\endhead
\endfoot
\bottomrule
\endlastfoot
WTO & World Trade Organization & 世界贸易组织\\
TRIMs & Trade-Related Investment Measures & 与贸易有关的投资措施\\
TPR & Trade Policy Review & 贸易政策审议\\
....
\end{longtable}
表格旋转和后置
表格旋转
用latex排版,如果要旋转文字,图像,表格等对象,首先得安装rotating包,在文档中使用usepackage{rotating}导入旋转包。
旋转命令格式\begin{command}{x},这里的{command}有三个命令选项: sideways, turn, rotate。{x}是用户自己定义的旋转角度。比如下面的例子将一个对象旋转90度:
\begin{sideways}将要打印的内容旋转90度\end{sideways}
turn和rotate都可以自己规定旋转的角度,但两者的区别是,rotate的旋转结果并不能保证被旋转对象所需要的空间。比如下面的例子讲一句话旋转120度,但是它有可能到超出页面,有些就不能显示了;
\begin{rotate}{120}将要打印的内容旋转自定义角度,但是旋转结果并不能保证被旋转对象所需要的空间\end{rotate}
需要注意的是,.Tex转成dvi格式后,你还不能看见旋转的结果,需要将dvi格式转成ps格式或者pdf后才可以看见旋转的结果。
代码范例:
\documentclass{article}
\usepackage{CJK} % 用于汉字
\usepackage{rotating} %用于旋转对象
\begin{document}
\begin{CJK*}{GBK}{song} %使用GBK宋体
\begin{sideways}将要打印的内容旋转90度\end{sideways}
\begin{turn}{45}将要打印的内容旋转自定义角度\end{turn}
\begin{rotate}{120}将要打印的内容旋转自定义角度,但是旋转结果并不能保证被旋转对象所需要的空间\end{rotate}
\end{CJK*}
\end{document}
也可以使用lscape宏包或者landscape宏包:
landscape 宏包(包括在标准的 LATEX 图形宏包套件中)定义 了 landscape 环境,允许在竖排版的文档中放置横排页。 横排页被旋转使得竖排页的左边界为其顶部。 输入命令 \begin{landscape} 使得所有未处理的竖排的浮动对象 被排出并开始横排页,同样地,输入命令 \end{landscape} 使得所 有未处理的横排的浮动对象被排出并重新回到竖排状态。 所有位于 landscape 环境中的内容都会被横排。如果只有 包含一个浮动图形环境
如果是表格,范例如下。
\usepackage{lscape}
\begin{landscape}
% your table
\end{landscape}
或者
\begin{landscape}
% your table
\end{landscape}
\begin{landscape}
\begin{figure}
\centering
\includegraphics[width=4in]{graphic.eps}
\caption{Landscape Figure}
\end{figure}
\end{landscape}
表格后置
使用 endfloat 宏包可以将文章中的所有图表置于文章末尾,以满足某些杂志的排版要求。
辅助转换工具
calc2latex 或 excel2latex 可以将电子表格文件数据转换为 latex 表格。
dat2latex.pl 这是 perl 脚本,可将 gnuplot 的文本数据文件转换为 latex 表格。
表格居中
表格居中可以用
\begin{center}..
\end{center}。
但是图片处理时候用这个代码上下会有较大空白,所以一般不用。一般多用\centering。比如
\begin{figure}
\centering
...
\end{figure}
分享到:
相关推荐
电子商务之价格优化算法:梯度下降:机器学习在价格优化中的角色.docx
ToadforOracle与Oracle数据库版本兼容性教程.docx
360浏览器银河麒麟版 for X86 适配兆芯 / 海光 / intel / AMD CPU
使用React.js构建,提供多种主题可供选择,并且易于定制。该项目旨在帮助开发者和自由职业者创建自己的个性化投资组合。 主要功能点 多种主题可供选择,包括绿色、黑白、蓝色、红色、橙色、紫色、粉色和黄色 易于定制,可以在src/data文件夹中更新个人信息 包含主页、关于、简历、教育、技能、经验、项目、成就、服务、推荐信、博客和联系等多个部分 支持通过Google表单收集联系信息 提供SEO优化建议 支持多种部署方式,如Netlify、Firebase、Heroku和GitHub Pages 技术栈主要 React.js Material-UI Axios React-fast-marquee React-helmet React-icons React-reveal React-router-dom React-router-hash-link React-slick Slick-carousel Validator
中小型企业财务管理系统 SSM毕业设计 附带论文 启动教程:https://www.bilibili.com/video/BV1GK1iYyE2B
python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。
电子商务之价格优化算法:线性回归:价格优化策略实施.docx
内容概要:报告详细介绍了企业数字化转型的驱动因素、数字化转型方案分类及其应用场景,重点关注了云计算、超连接、数字孪生、人工智能、分布式账本、增材制造、人机接口、数据共享、工业物联网等关键技术。这些技术不仅支持了企业的运营效率提升和业务模式创新,也为实现更快、更开放、更高效的数字化转型提供了支撑。报告最后提出了企业实施数字化转型的六个步骤。 适合人群:企业高级管理人员、技术人员、咨询顾问,以及对工业数字化转型感兴趣的读者。 使用场景及目标:帮助企业制定和实施数字化转型策略,优化运营模式,提升业务效率,增强市场竞争力。同时,也可作为政府部门、研究机构和行业协会的参考文献。 其他说明:报告中提到的关键技术及其应用场景对企业数字化转型具有重要的指导意义,特别是对于那些希望通过数字化转型实现业务创新和升级的企业。
基于java的线上选课系统的设计与实现答辩PPT.pptx
安装前的准备 1、安装Python:确保你的计算机上已经安装了Python。你可以在命令行中输入python --version或python3 --version来检查是否已安装以及安装的版本。 个人建议:在anaconda中自建不同python版本的环境,方法如下(其他版本照葫芦画瓢): 比如创建python3.8环境,anaconda命令终端输入:conda create -n py38 python==3.8 2、安装pip:pip是Python的包管理工具,用于安装和管理Python包。你可以通过输入pip --version或pip3 --version来检查pip是否已安装。 安装WHL安装包 1、打开命令行(或打开anaconda命令行终端): 在Windows上,你可以搜索“cmd”或“命令提示符”并打开它。 在macOS或Linux上,你可以打开“终端”。 2、cd到whl文件所在目录安装: 使用cd命令导航到你下载的whl文件所在的文件夹。 终端输入:pip install xxx.whl安装即可(xxx.whl指的是csdn下载解压出来的whl) 3、等待安装完成: 命令行会显示安装进度,并在安装完成后返回提示符。 以上是简单安装介绍,小白也能会,简单好用,从此再也不怕下载安装超时问题。 使用过程遇到问题可以私信,我可以帮你解决! 收起
电子商务之价格优化算法:贝叶斯定价:贝叶斯网络在电子商务定价中的应用.docx
IMG_20241105_235746.jpg
基于java的毕业设计选题系统答辩PPT.pptx
专升本考试资料全套.7z
Trustwave DbProtect:数据库活动监控策略制定.docx
基于VB的程序实例,可供参考学习使用
本压缩包资源说明,你现在往下拉可以看到压缩包内容目录 我是批量上传的基于SpringBoot+Vue的项目,所以描述都一样;有源码有数据库脚本,系统都是测试过可运行的,看文件名即可区分项目~ |Java|SpringBoot|Vue|前后端分离| 开发语言:Java 框架:SpringBoot,Vue JDK版本:JDK1.8 数据库:MySQL 5.7+(推荐5.7,8.0也可以) 数据库工具:Navicat 开发软件: idea/eclipse(推荐idea) Maven包:Maven3.3.9+ 系统环境:Windows/Mac
该源码项目是一款基于Thinkphp5框架的Java插件设计,包含114个文件,其中Java源文件60个,PNG图片32个,XML配置文件7个,GIF图片7个,Git忽略文件1个,LICENSE文件1个,Markdown文件1个,Xmind文件1个,Idea项目文件1个,以及JAR文件1个。
数据库开发和管理最佳实践.pdf
本压缩包资源说明,你现在往下拉可以看到压缩包内容目录 我是批量上传的基于SpringBoot+Vue的项目,所以描述都一样;有源码有数据库脚本,系统都是测试过可运行的,看文件名即可区分项目~ |Java|SpringBoot|Vue|前后端分离| 开发语言:Java 框架:SpringBoot,Vue JDK版本:JDK1.8 数据库:MySQL 5.7+(推荐5.7,8.0也可以) 数据库工具:Navicat 开发软件: idea/eclipse(推荐idea) Maven包:Maven3.3.9+ 系统环境:Windows/Mac