Latex中的表格(2)
Latex中的表格
- 一、一个加脚注的三线表的例子
- 二、表格中加注释
- 三、并排的表格
- 3.1 使用小页环境并排表格
- 3.2 使用子表格并排表格
- 四、一个复杂的表格
- 五、一个长表格
这篇文章主要罗列一些特殊的表格例子。内容来自:一篇北师大学位论文模板,详见https://github.com/jinyiliu/bnu-thesis-template
常用的关于表格的宏包有三个:
booktabs、array和longtabular,命令有一个\hlinewd。三线表可以用booktabs提供的\toprule、\midrule和\bottomrule。它们与longtable能很好的配合使用。如果表格比较简单的话可以直接用命令hlinewd{xpt}控制。
一、一个加脚注的三线表的例子
这是一个简单的三线表,同时在表格中使用脚注:
- 注意三线表中各条线的命令;
- Latex本身不支持在表格中使用
\footnote,所以我们能要将表格放在小页minipage中。同时,为了美观,最好将表格的宽度设置为小页的宽度。
代码:
\begin{table}[htb]\centering\begin{minipage}[t]{0.8\linewidth} % 如果想在表格中使用脚注,minipage是个不错的办法\caption[模板文件]{模板文件。如果表格的标题很长,那么在表格索引中就会很不美观,所以要像 chapter 那样在前面用中括号写一个简短的标题。这个标题会出现在索引中。}\label{tab:template-files}{\fontsize{26pt}{2.5mm}\begin{tabular*}{\linewidth}{lp{10cm}}\toprule[1.5pt]{\hei 文件名} & {\hei 描述} \\\midrule[1pt]bnuthesis.ins & \LaTeX{} 安装文件,docstrip\footnote{表格中的脚注} \\bnuthesis.dtx & 所有的一切都在这里面\footnote{再来一个}。\\bnuthesis.cls & 模板类文件。\\bnuthesis.cfg & 模板配置文。cls 和 cfg 由前两个文件生成。\\bnubib.bst & 参考文献 Bibtex 样式文件。\\bnutils.sty & 常用的包和命令写在这里,减轻主文件的负担。\\\bottomrule[1.5pt]\end{tabular*}}\end{minipage}
\end{table}
实例:

二、表格中加注释
在一些情况下,我们需要在表格下标注数据来源,或者对表格中的条目进行解释。利用前一个例子中的脚注\footnote是一个不错的选择,但如果不喜欢使用脚注,也可以选择使用如下例子中的注释的方式。
- 注意这里表格横线的使用方式;
- 下表中演示了通过
tabularx的|X|扩展实现表格自动放大;
代码:
\begin{table}[h]\centering\caption{复杂表格示例 1}\label{tab:tabexamp1}\begin{minipage}[t]{0.8\textwidth} \begin{tabularx}{\linewidth}{|l|X|X|X|X|}\hline\multirow{2}* & \multicolumn{2}{c|}{First Half} & \multicolumn{2}{c|}{Second Half}\\\cline{2-5}& 1st Qtr &2nd Qtr&3rd Qtr&4th Qtr \\ \hlineEast$^{*}$ & 20.4& 27.4& 90& 20.4 \\West$^{**}$ & 30.6 & 38.6 & 34.6 & 31.6 \\ \hline\end{tabularx}\\[2pt]\footnotesize 注:数据来源《\bnuthesis{} 使用手册》。\\*:东部\\**:西部\end{minipage}
\end{table}
实例:

三、并排的表格
浮动体的并排放置一般有两种情况:
- 二者没有关系,为两个独立的浮动体;
- 二者隶属与同一个浮动体。
3.1 使用小页环境并排表格
代码:
\begin{table}[h]\noindent\begin{minipage}{0.5\textwidth}\centering\caption{第一个并排子表格}\label{tab:parallel1}\begin{tabular}{p{2cm}p{2cm}}\toprule[1.5pt]111 & 222 \\\midrule[1pt]222 & 333 \\\bottomrule[1.5pt]\end{tabular}\end{minipage}\begin{minipage}{0.5\textwidth}\centering\caption{第二个并排子表格}\label{tab:parallel2}\begin{tabular}{p{2cm}p{2cm}}\toprule[1.5pt]111 & 222 \\\midrule[1pt]222 & 333 \\\bottomrule[1.5pt]\end{tabular}\end{minipage}
\end{table}
实例:

3.2 使用子表格并排表格
代码:
\begin{table}\centering\caption{并排子表格}\label{tab:subtable}\subfloat[第一个子表格]{\begin{tabular}{p{2cm}p{2cm}}\toprule[1.5pt]111 & 222 \\\midrule[1pt]222 & 333 \\\bottomrule[1.5pt]\end{tabular}}\hskip2cm\subfloat[第二个子表格]{\begin{tabular}{p{2cm}p{2cm}}\toprule[1.5pt]111 & 222 \\\midrule[1pt]222 & 333 \\\bottomrule[1.5pt]\end{tabular}}
\end{table}
实例:

四、一个复杂的表格
一个形式比较复杂的表格。
代码:
\begin{table}[hb]\centering\dawu[1.3]\caption{复杂表格示例 2}\label{tab:tabexamp2}\begin{tabular}[c]{|c|m{0.8in}|c|c|c|c|c|}\hline\multicolumn{2}{|c|}{Network Topology} & \# of nodes & \multicolumn{3}{c|}{\# of clients} & Server \\\hlineGT-ITM & Waxman Transit-Stub & 600 &\multirow{2}{2em}{2\%}& \multirow{2}{2em}{10\%}& \multirow{2}{2em}{50\%}& \multirow{2}{1.2in}{Max. Connectivity}\\\cline{1-3}\multicolumn{2}{|c|}{Inet-2.1} & 6000 & & & &\\\hline\multirow{2}{1in}{Xue} & Rui & Ni &\multicolumn{4}{c|}{\multirow{2}*{\bnuthesis}}\\\cline{2-3}& \multicolumn{2}{c|}{ABCDEF} &\multicolumn{4}{c|}{} \\\hline
\end{tabular}
\end{table}
实例:

五、一个长表格
如果要排版的表格长度超过一页,那么推荐使用longtable 或者 supertabular
宏包,文章开头提到的参考文章的理解中的模板对 \textsf{longtable} 进行了相应的设置,所以用起来可能简单一些。
代码:
\begin{longtable}[c]{c*{6}{r}}
\caption{实验数据}\label{tab:performance}\\
\toprule[1.5pt]测试程序 & \multicolumn{1}{c}{正常运行} & \multicolumn{1}{c}{同步} & \multicolumn{1}{c}{检查点} & \multicolumn{1}{c}{卷回恢复}
& \multicolumn{1}{c}{进程迁移} & \multicolumn{1}{c}{检查点} \\
& \multicolumn{1}{c}{时间 (s)}& \multicolumn{1}{c}{时间 (s)}&
\multicolumn{1}{c}{时间 (s)}& \multicolumn{1}{c}{时间 (s)}& \multicolumn{1}{c}{时间 (s)}& 文件(KB)\\\midrule[1pt]
\endfirsthead
\multicolumn{7}{c}{续表~\thetable\hskip1em 实验数据}\\
\toprule[1.5pt]测试程序 & \multicolumn{1}{c}{正常运行} & \multicolumn{1}{c}{同步} & \multicolumn{1}{c}{检查点} & \multicolumn{1}{c}{卷回恢复}
& \multicolumn{1}{c}{进程迁移} & \multicolumn{1}{c}{检查点} \\
& \multicolumn{1}{c}{时间 (s)}& \multicolumn{1}{c}{时间 (s)}&
\multicolumn{1}{c}{时间 (s)}& \multicolumn{1}{c}{时间 (s)}& \multicolumn{1}{c}{时间 (s)}& 文件(KB)\\\midrule[1pt]
\endhead
\hline
\multicolumn{7}{r}{续下页}
\endfoot
\endlastfoot
CG.A.2 & 23.05 & 0.002 & 0.116 & 0.035 & 0.589 & 32491 \\
CG.A.4 & 15.06 & 0.003 & 0.067 & 0.021 & 0.351 & 18211 \\
CG.A.8 & 13.38 & 0.004 & 0.072 & 0.023 & 0.210 & 9890 \\
CG.B.2 & 867.45 & 0.002 & 0.864 & 0.232 & 3.256 & 228562 \\
CG.B.4 & 501.61 & 0.003 & 0.438 & 0.136 & 2.075 & 123862 \\
CG.B.8 & 384.65 & 0.004 & 0.457 & 0.108 & 1.235 & 63777 \\
MG.A.2 & 112.27 & 0.002 & 0.846 & 0.237 & 3.930 & 236473 \\
MG.A.4 & 59.84 & 0.003 & 0.442 & 0.128 & 2.070 & 123875 \\
MG.A.8 & 31.38 & 0.003 & 0.476 & 0.114 & 1.041 & 60627 \\
MG.B.2 & 526.28 & 0.002 & 0.821 & 0.238 & 4.176 & 236635 \\
MG.B.4 & 280.11 & 0.003 & 0.432 & 0.130 & 1.706 & 123793 \\
MG.B.8 & 148.29 & 0.003 & 0.442 & 0.116 & 0.893 & 60600 \\
LU.A.2 & 2116.54 & 0.002 & 0.110 & 0.030 & 0.532 & 28754 \\
LU.A.4 & 1102.50 & 0.002 & 0.069 & 0.017 & 0.255 & 14915 \\
LU.A.8 & 574.47 & 0.003 & 0.067 & 0.016 & 0.192 & 8655 \\
LU.B.2 & 9712.87 & 0.002 & 0.357 & 0.104 & 1.734 & 101975 \\
LU.B.4 & 4757.80 & 0.003 & 0.190 & 0.056 & 0.808 & 53522 \\
LU.B.8 & 2444.05 & 0.004 & 0.222 & 0.057 & 0.548 & 30134 \\
EP.A.2 & 123.81 & 0.002 & 0.010 & 0.003 & 0.074 & 1834 \\
EP.A.4 & 61.92 & 0.003 & 0.011 & 0.004 & 0.073 & 1743 \\
EP.A.8 & 31.06 & 0.004 & 0.017 & 0.005 & 0.073 & 1661 \\
EP.B.2 & 495.49 & 0.001 & 0.009 & 0.003 & 0.196 & 2011 \\
EP.B.4 & 247.69 & 0.002 & 0.012 & 0.004 & 0.122 & 1663 \\
EP.B.8 & 126.74 & 0.003 & 0.017 & 0.005 & 0.083 & 1656 \\
\bottomrule[1.5pt]
\end{longtable}
实例:

相关文章:
Latex中的表格(2)
Latex中的表格一、一个加脚注的三线表的例子二、表格中加注释三、并排的表格3.1 使用小页环境并排表格3.2 使用子表格并排表格四、一个复杂的表格五、一个长表格这篇文章主要罗列一些特殊的表格例子。内容来自:一篇北师大学位论文模板,详见https://githu…...
(七)输运定理
本文主要内容包括:1. 物质积分2. 曲线上物质积分的时间变化率3. 曲面上物质积分的时间变化率4. 体积域上物质积分的时间变化率 (Reynolds 输运定理)1. 物质积分 考虑 t0t_0t0 时刻参考构型中由物质点 X⃗\vec{X}X所形成的 物质曲线 ct0c_{t_0}ct0、物质曲面 …...
ABBYYFineReader15免费电脑pdf文档文字识别软件
ABBYYFineReader是一款OCR文字识别软件,它可以对图片、文档等进行扫描识别,并将其转换为可编辑的格式,比如Word、Excel等,操作也是挺方便的。 我们在官网找到该软件并进行下载,打开软件后,选择转换为“Mic…...
顺序表(超详解哦)
全文目录引言顺序表定义静态顺序表动态顺序表动态顺序表的接口实现顺序表的初始化与销毁顺序表尾插/尾删顺序表头插/头删顺序表在pos位置插入/删除顺序表的打印顺序表中的查找总结引言 在生产中,为了方便管理数据,我们经常会需要将一些数据连续的存储起…...
Compose-Animation高级别动画
目录前言AnimatedVisibilityisScrollingUpFABscaffoldanimateContentSizeCrossfade顶部气泡下弹前言 AnimatedVisibility 驱动可视性相关动画,即布局显隐 animateContentSize 内容变换动画相关 Crossfade 布局(或者页面)切换过渡动画 Animat…...
c++11 标准模板(STL)(std::unordered_set)(八)
定义于头文件 <unordered_set> template< class Key, class Hash std::hash<Key>, class KeyEqual std::equal_to<Key>, class Allocator std::allocator<Key> > class unordered_set;(1)(C11 起)namespace pmr { templ…...
Python每日一练(20230225)
目录 1. 整数反转 2. 求最大公约数和最小公倍数 最大公约数 最小公倍数 3. 单词搜索 II 附录: DFS 深度优先搜索算法 BFS 广度优先搜索算法 BFS 和 DFS 的区别 1. 整数反转 给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。…...
基于博客系统的测试用例
登陆界面博客预览页博客详情页博客编辑页...
C语言运算符算术运算符关系运算符
C 运算符 运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。C 语言内置了丰富的运算符,并提供了以下类型的运算符: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 杂项运算符 本章将逐一介绍算术运算符、关系运算符、逻辑运算符、位运…...
C语言 深度剖析数据在内存中的存储
目录数据类型详细介绍整形在内存中的存储:原码,反码,补码大小端字节序介绍及判断浮点型在内存中的存储解析数据类型详细介绍整形:1.为什么char类型也会归类到整形家族当中去呢?字符存储和表示的时候本质上使用的是ASCI…...
MyBatis快速开发
查询user表中的所有数据 步骤: 创建user表 打开Navicat,新建查询,将下面SQL代码复制粘贴并执行: create database mybatis; use mybatis;drop table if exists tb_user;create table tb_user(id int primary key auto_incremen…...
大数据常见应用场景及架构改进
大数据常见应用场景及架构改进大数据典型的离线处理场景1.大数据数据仓库及它的架构改进2.海量数据规模下的搜索与检索3.新兴的图计算领域4.海量数据挖掘潜在价值大数据实时处理场景大数据典型的离线处理场景 1.大数据数据仓库及它的架构改进 对于离线场景,最典型…...
【华为OD机试模拟题】用 C++ 实现 - 挑选字符串(2023.Q1)
最近更新的博客 【华为OD机试模拟题】用 C++ 实现 - 货币单位换算(2023.Q1) 【华为OD机试模拟题】用 C++ 实现 - 选座位(2023.Q1) 【华为OD机试模拟题】用 C++ 实现 - 停车场最大距离(2023.Q1) 【华为OD机试模拟题】用 C++ 实现 - 重组字符串(2023.Q1) 【华为OD机试模…...
程序员是世界上最理性、最睿智的群体,耶稣也反驳不了我,我说的!
有人说,程序员是吃青春饭的,35 岁就提前退休了。 猛一看,这句话是对的;仔细一看,这句话是不对的。 说它对,是因为现实中确实有很多程序员 35 岁就被毕业了;说它不对,是因为 35 岁以…...
人工智能到底是什么?
人工智能(Artificial Intelligence,AI)是一种利用计算机科学和统计学理论和技术来实现人类智能的一门交叉学科,旨在使计算机系统能够模拟、扩展和增强人类的智能能力,使计算机能够像人类一样思考、学习、决策和执行任务…...
在动态规划的海洋中遨游(三)
前言:\textcolor{Green}{前言:}前言: 💞 好久没写题,有点生疏了。这也是给大家提一个醒,一定要一直坚持下去,哪怕每天只做一点点。💞 算法类别一、算法介绍原理适用的情况做题步骤二…...
enable_if模板编程实现字节序转换模板
enable_if和SFINAESFINAE是模板的一个特性,也就是替换失败不报错。正常来说,函数匹配的时候按照优先级依次匹配定义的重载函数,最终选择最佳匹配的函数运行。模板也是一样的,但是在替换模板时,即使出现异常错误也不认为…...
【人工智能与深度学习】基于能量的模型
【人工智能与深度学习】基于能量的模型 概述能量基础模型(EBM)方法定义解决方案:基于梯度的推理有潜在变量的能量基础模型推理例子能量基础模型和机率模型的对比自由能(Free Energy)概述 我们现在介绍一个新框架来定义模型。它提供了一个统一和系列性的方式来定义「监督模型」…...
功能测试三年,是应该改变了
前言 测试行业3年多经验,学历大专自考本科,主要测试方向web,PC端,wap站,小程序公众号都测试过,app也测过一些,C端B端都有,除功能外,接口性能也有涉猎,但是不…...
基于STM32的ubuntu交叉编译环境的搭建(arm-gcc 8.2)
常用的STM32的软件开发方法都是基于MDK keil或IAR集成开发环境,但以上两个集成开发环境软件都是需要收费的,且价格较为昂贵。本节介绍一种在ubuntu上安装arm gcc(arm-eabi)的方式,用于编译STM32的程序。 1.在arm官网下…...
Docker 离线安装指南
参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性,不同版本的Docker对内核版本有不同要求。例如,Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本,Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...
C++初阶-list的底层
目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...
Opencv中的addweighted函数
一.addweighted函数作用 addweighted()是OpenCV库中用于图像处理的函数,主要功能是将两个输入图像(尺寸和类型相同)按照指定的权重进行加权叠加(图像融合),并添加一个标量值&#x…...
Neo4j 集群管理:原理、技术与最佳实践深度解析
Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...
优选算法第十二讲:队列 + 宽搜 优先级队列
优选算法第十二讲:队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...
Web 架构之 CDN 加速原理与落地实践
文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 …...
MySQL账号权限管理指南:安全创建账户与精细授权技巧
在MySQL数据库管理中,合理创建用户账号并分配精确权限是保障数据安全的核心环节。直接使用root账号进行所有操作不仅危险且难以审计操作行为。今天我们来全面解析MySQL账号创建与权限分配的专业方法。 一、为何需要创建独立账号? 最小权限原则…...
C++使用 new 来创建动态数组
问题: 不能使用变量定义数组大小 原因: 这是因为数组在内存中是连续存储的,编译器需要在编译阶段就确定数组的大小,以便正确地分配内存空间。如果允许使用变量来定义数组的大小,那么编译器就无法在编译时确定数组的大…...
HarmonyOS运动开发:如何用mpchart绘制运动配速图表
##鸿蒙核心技术##运动开发##Sensor Service Kit(传感器服务)# 前言 在运动类应用中,运动数据的可视化是提升用户体验的重要环节。通过直观的图表展示运动过程中的关键数据,如配速、距离、卡路里消耗等,用户可以更清晰…...
【JavaSE】多线程基础学习笔记
多线程基础 -线程相关概念 程序(Program) 是为完成特定任务、用某种语言编写的一组指令的集合简单的说:就是我们写的代码 进程 进程是指运行中的程序,比如我们使用QQ,就启动了一个进程,操作系统就会为该进程分配内存…...
