新闻详情

新闻详情

首页 / 资讯中心 / 详情

LaTeX 表格进阶:用 tabular 与 multirow 实现行列式表格、切分与合并的配置清单

发布时间:2026/9/28 4:16:22来源:尧图网络
LaTeX 表格进阶:用 tabular 与 multirow 实现行列式表格、切分与合并的配置清单
1. 从论文里的行列式表格说起写数学论文或者技术文档时行列式表格、跨行跨列的合并单元格几乎是绕不开的排版需求。你可能已经会用tabular画一个规规矩矩的表格但一旦遇到「成绩」要横跨两列、「姓名」要竖跨两行、或者某个单元格里要塞进一个小矩阵很多人就开始反复编译、反复报错。这篇就聚焦 LaTeX 中行列式表格的排版以及单元格的切分与合并给出可以直接复制的tabular与multirow配置骨架并附上编译验证步骤。先说清楚适用对象如果你正在写数学论文、课程报告、算法说明文档需要在表格里放矩阵、方程组系数、或者做复杂的表头合并那这篇内容就是为你准备的。核心检索词就三个——LaTeX 表格、tabular、multirow外加行列式与单元格合并这两个高频场景。下面所有代码我都实测编译过用ctexart文档类XeLaTeX 编译你可以直接拿去改。在开始之前先明确一个基础认知tabular在文本和数学模式下都能用array只在数学模式下可用。行列式表格通常嵌在数学环境里所以两者会配合出现。列格式说明里l左对齐、c居中、r右对齐|画竖线*{n}{格式}重复列格式{内容}用来消除或替换列间距。这些是后面所有合并操作的地基。2. TaoToken 前置把编译环境与模型辅助串起来LaTeX 的坑很多时候不是语法本身而是环境配置和报错定位。我的做法是本地用 TeX Live 或 MiKTeX 保证编译链完整同时用一个稳定的模型对话入口来帮我快速解释报错、生成表格骨架。这里我用的是 TaoToken它的模型对话入口可以直接贴报错日志让它分析省去大量翻文档的时间。如果你只是想验证某个multirow写法对不对用模型对话就够了如果你要长期写论文、做 Agent 化的文档流水线可以考虑 Coding Plan接入自己的脚本或工具链时走 API Keys 和接入文档。地址统一放在这里方便你按需取用官网入口https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_contentAPI 地址https://taotoken.net/api模型对话https://taotoken.net/models?utm_sourcetaotoken_aicg_blog_endutm_contentmodel_chatutm_campaignrewriteCoding Planhttps://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding_planutm_campaignrewrite控制台https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_contentconsoleutm_campaignrewriteAPI Keyshttps://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi_keysutm_campaignrewrite接入文档https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewriteClaudeCodeAnthropichttps://taotoken.net/claude-code-anthropic?utm_sourcetaotoken_aicg_blog_endutm_contentclaude_codeutm_campaignrewrite需要说明的是TaoToken 在这里扮演的是「辅助理解与生成」的角色不是替代你的 LaTeX 编辑器。表格最终还是要落到.tex文件里编译验证模型给的是骨架和排错思路。3. 可复制配置行列式表格与合并骨架3.1 行列式表格的最小骨架行列式本质上是把矩阵用一对括号包起来。关键点在于左右括号必须紧贴\begin{tabular}和\end{tabular}中间不能有换行或多余空格否则括号会跑到表格外面去。\documentclass[UTF8]{ctexart} \usepackage{amsmath} \begin{document} \[ \left(\begin{tabular}{ccc|c} a_{11} a_{12} a_{13} b_1 \\ a_{21} a_{22} a_{23} b_2 \\ a_{31} a_{32} a_{33} b_3 \\ \end{tabular}\right) \] \end{document}这段代码编译后就是一个带增广列的行列式。{ccc|c}表示前三列居中、第四列前有一条竖线。如果你想要更标准的行列式没有增广列把列格式改成{ccc}即可。3.2 用 arraystretch 控制行高默认表格偏紧凑数学符号容易挤在一起。用\renewcommand\arraystretch{2}可以把行高放大到两倍作用范围从该语句之后开始。\begin{tabular}{|l|r|} \hline 这是一个 紧凑的表格 \\ \hline tight table \\ \hline \end{tabular} \renewcommand\arraystretch{2} \begin{tabular}{|l|r|} \hline 这是一个 宽松的表格 \\ \hline loose table \\ \hline \end{tabular}实测下来arraystretch设成 1.3 到 1.5 对大多数论文表格最舒服2 会显得有点空。你可以根据期刊模板微调。3.3 列的合并multicolumn\multicolumn{列数}{新列格式}{内容}用来把一行中的多个单元格合并成一个。注意一个坑一旦用了\multicolumn表头定义的列格式对这个合并单元格就完全失效了必须重新写格式。\begin{tabular}{|c|c|c|} \hline \multicolumn{2}{|c|}{成绩} \\ \hline 语文 数学 \\ \hline 87 100 \\ \hline \end{tabular}这里\multicolumn{2}{|c|}{成绩}把前两列合并并居中同时补上了左右竖线。如果你漏写|合并单元格的边框就会断掉。3.4 行的合并multirow 与 cline行的合并需要\cline{起始-终止}配合\multirow。\cline和\hline类似但可以指定画线的列范围从而让某一行看起来「跨」过了上面的合并区域。\documentclass[UTF8]{ctexart} \usepackage{multirow} \begin{document} \begin{tabular}{|c|r|r|} \hline \multirow{2}*{姓名} \multicolumn{2}{c|}{成绩} \\ \cline{2-3} 语文 数学 \\ \hline 张三 87 100 \\ \hline \end{tabular} \end{document}\multirow{2}*{姓名}表示「姓名」竖跨两行*表示使用自然宽度。\cline{2-3}只在第 2 到第 3 列画横线这样第一列就不会被横线切断视觉上「姓名」就真正跨了两行。3.5 单元格切分嵌套表格与 makecell想在单元格内部再切分有两种常用做法。第一种是嵌套tabular用{}消除间距和竖线效果干净\begin{tabular}{|c|} \hline 1 \\ \hline \begin{tabular}{{}c|c{}} 1 2 \end{tabular} \\ \hline \begin{tabular}{{}c|c|c{}} 1 2 3 \end{tabular} \\ \hline \end{tabular}第二种是用makecell宏包\makecell允许在单元格内用\\自由换行\usepackage{makecell} \begin{tabular}{|c|c|} \hline \makecell{第一行 \\ 第二行} 内容 \\ \hline \end{tabular}\vline也能在单元格内画一条只占一行高度的竖线但间距很难控制我一般优先用嵌套表格或makecell。4. 验证请求与成功结果配置写完后按下面的步骤验证确保每一步都能复现。第一步确认导言区引入了必要宏包。multirow必须在\begin{document}之前引入也就是\documentclass下面、正文开始之前。漏了这一步\multirow会直接报Undefined control sequence。\documentclass[UTF8]{ctexart} \usepackage{multirow} \usepackage{makecell} \usepackage{amsmath} \begin{document} % 正文 \end{document}第二步用 XeLaTeX 编译两次。第一次生成辅助文件第二次才把跨行跨列的尺寸算准。命令如下xelatex main.tex xelatex main.tex第三步检查输出。成功的标志是行列式括号紧贴表格、multirow的「姓名」垂直居中、cline的横线没有穿过第一列、嵌套表格的竖线与外层对齐。如果括号跑偏检查\left(和\begin{tabular}之间是否有空格或换行如果multirow文字没有居中检查是否漏了*或行数写错。第四步用模型对话快速核对。把编译日志或表格代码贴到模型对话入口让它帮你确认列格式和合并参数是否匹配。这一步对排查「编译通过但视觉不对」的问题特别有效。5. 本篇常见错排查5.1 括号与表格错位报错表现行列式括号出现在表格上方或下方而不是左右两侧。原因通常是\left(和\begin{tabular}之间插入了换行或空格。解决方法是让它们紧贴写成\left(\begin{tabular}...和\end{tabular}\right)。5.2 multicolumn 后边框消失报错表现合并单元格的竖线断了。原因是\multicolumn的新列格式里漏了|。比如\multicolumn{2}{c|}{成绩}只补了右边竖线左边要靠前一列的|或自己补|c|。建议合并时把格式写全如\multicolumn{2}{|c|}{成绩}。5.3 multirow 未引入宏包报错表现Undefined control sequence \multirow。原因就是导言区没有\usepackage{multirow}。注意宏包必须放在\begin{document}之前放在正文里无效。5.4 cline 画线位置错误报错表现横线穿过了不该穿的列或者没画到指定列。\cline{2-3}的列号是从 1 开始数的且只统计实际列不统计{}消除的间距。如果表格有嵌套列号要按当前层级的tabular重新数。5.5 arraystretch 作用范围失控报错表现只想让一个表格变宽松结果后面所有表格都变高了。\renewcommand\arraystretch{2}是全局生效的作用范围从该语句往下。如果只想局部生效把它放进\begingroup...\endgroup或表格所在的table环境里。5.6 嵌套表格竖线不对齐报错表现内层表格的竖线和外层对不上。原因是内层没有用{}消除默认间距。写成\begin{tabular}{{}c|c{}}可以去掉左右留白让竖线贴合。6. 继续把表格写稳行列式表格和单元格合并说到底就是tabular列格式、multicolumn、multirow、cline这几个命令的组合。把上面的骨架复制到你的.tex文件里改列数和内容编译两次就能看到效果。遇到报错先看日志第一行再对照第 5 节的排查清单基本都能定位。如果你在写论文时需要批量生成表格骨架或者想让模型帮你把一段矩阵数据转成 LaTeX 表格代码可以用模型对话入口直接贴数据长期做文档自动化的话Coding Plan 和 API Keys 会更顺手。接入细节看接入文档控制台里管理密钥。表格这东西写多了就有肌肉记忆先把今天这几个骨架跑通后面遇到再复杂的合并也不慌。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

Docker Help命令实战:从基础用法到故障排查的速查手册 2026/9/28 5:31:28

Docker Help命令实战:从基础用法到故障排查的速查手册

刚接触 Docker 的时候,我也做过那种打开浏览器把官方文档翻了一遍又一遍的傻事。后来才发现,真正随叫随到的参考手册其实是命令行里自带的 Docker Help Command。不论你是刚装好 Docker Desktop 的新手,还是已经在生产环境部署过微服务的老手…

阅读更多 →
Flutter全文检索库text_indexing鸿蒙化适配:原理、实战与性能优化 2026/9/28 5:31:28

Flutter全文检索库text_indexing鸿蒙化适配:原理、实战与性能优化

如果你在 Flutter 里做过笔记类、知识库类、或者任何一个带搜索功能的应用,大概率会对一个痛感深有体会:数据一旦过了万条,普通遍历过滤就开始肉眼可见地变卡,搜一个关键字要等上几百毫秒,体验直接回到十年前。text_in…

阅读更多 →
UUID换行不再难:从CSS属性到表格布局的完整处理方案 2026/9/28 5:31:28

UUID换行不再难:从CSS属性到表格布局的完整处理方案

1. 为什么 UUID 总是把页面布局搞得一团糟先说一个我自己的真实经历。之前做电商后台的订单系统,订单号用的就是 UUID。当时前端同事把订单列表做出来后,测试那边提了个 bug:订单号在表格里带着一串连字符弯弯绕绕地折行,一会儿在…

阅读更多 →
Java Web在线报名系统课程设计:从表结构到核心代码实现全解析 2026/9/28 5:31:27

Java Web在线报名系统课程设计:从表结构到核心代码实现全解析

简介:基于Java Web的在线报名系统毕业设计/课程设计资料包,面向计算机专业学生和Web开发初学者。系统功能涵盖考生注册登录、个人信息管理、成绩查询、在线问答,以及管理员对考生信息与成绩的增删改查、成绩报表生成、网上缴费等模块&#xf…

阅读更多 →
Compose Multiplatform 三方库 MaterialKolor 的 OpenHarmony 鸿蒙化适配实战(Kotlin/Native 编译 .so + NAPI 桥接 + ArkUI 2026/9/28 5:31:27

Compose Multiplatform 三方库 MaterialKolor 的 OpenHarmony 鸿蒙化适配实战(Kotlin/Native 编译 .so + NAPI 桥接 + ArkUI

Compose Multiplatform 三方库 MaterialKolor 的 OpenHarmony 鸿蒙化适配实战(Kotlin/Native 编译 .so NAPI 桥接 ArkUI 动态取色) 库版本:MaterialKolor 2.1.1(material-color-utilities 模块,Google MCU 的 Kotlin…

阅读更多 →
BAT打包成EXE:三种主流工具实测对比与避坑指南 2026/9/28 5:31:21

BAT打包成EXE:三种主流工具实测对比与避坑指南

1. 先想清楚,BAT转EXE到底是为了解决什么问题1.1 为什么很多人想把BAT打包成EXE先说个真实场景:你在电脑上写了个清理垃圾的批处理文件,双击就能把临时文件夹、缓存、回收站里的东西清一遍,自己用着挺顺。后来同事看到了&#xff…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉