平时看书经常看到“图1.2”这样的编号,含义是第1章的第2幅插图;或者“图1.1.2”,含义是第1章第1节的第2幅插图。而在LaTeX中如果直接插图的话只会显示“图2”这样的编号,有没有办法在LaTeX的图表序号中加入章节序号呢?办法肯定是有的,下面就是一种办法。

在插入图表之前(比如导言区)加入以下两行代码:

\renewcommand {\thetable} {\thechapter{}.\arabic{table}}

\renewcommand {\thefigure} {\thechapter{}.\arabic{figure}}

第一行是设定表格的编号,第二行设定图片的编号。这样设置的实现效果为“图1.1”、“表2.2”。正文中\label{...}和\ref{...}使用方法不变。需要“图1-1”这种格式的话可以把上面指令中的“.”改为“-”。

其中\thechapter是章节号,类似地还有\thesection、\thesubsection。

table和figure是表格和图片计数器(counter)的值。

\arabic{...}的含义是输出阿拉伯数字的编号。如果需要大小写的罗马数字,可以分别使用\Roman{...}和\roman{...}。

需要注意的是\thechapter、\thesection和\thesubsection这三个宏的输出会包含上层序号,比如在第1章(chapter)第2节(section)第3小节(subsection)中,\thesubsection的输出结果就是1.2.3,\thesection的输出结果就是1.2,\thechapter的输出结果就是1。使用时要注意避免重复,只用其中一个就行了。

与上面三个宏形成对比的是\arabic{chapter}、\arabic{section}和\arabic{subsection}这三个命令,它们也可用在前面的指令中,但它们只输出当前一层的序号,同样以第1章(chapter)第2节(section)第3小节(subsection)为例,\arabic{subsection}的输出结果是3,\arabic{section}的输出结果是2,\arabic{chapter}的输出结果是1。使用这三个指令可以输出“1-2-3”这样的章节编号。

这种方法有一个问题,table和figure计数器不会自动清零,比如第1章有3幅图片,到第2章时LaTeX会从“图2.4”开始编号。为了解决这个问题,需要在合适的地方(比如一章结尾或下一章开头)手动将计数器清零,即

\setcounter{table}{0}

\setcounter{figure}{0}


参考文献:http://blog.sina.com.cn/s/blog_8f89555c0101cwvn.html

Latex技巧:在图表序号中加入章节号(实现诸如“图1.1.2”这样的图表序号)的更多相关文章

  1. 教您如何在Word的mathtype加载项中修改章节号

    在MathType数学公式编辑器中,公式编号共有五部分内容:分别是章编号(Chapter Number).节编号(Section Number).公式编号(Equation Number).括号(En ...

  2. LaTeX技巧010:LaTtex中如何给每个句子加序号?

    效果图: 代码: \documentclass{article} \newcounter{sentence} \renewcommand\thesentence{\textsuperscript{\a ...

  3. LaTeX技巧011:LaTtex中如何产生直立体希腊字母?

     %\usepackage{upgreek}\upmu \uppi

  4. LaTeX技巧561:LaTeX如何让每一章带有目录?

    转自: http://blog.sina.com.cn/s/blog_5e16f1770102ds8b.html LaTeX技巧561:LaTeX如何让每一章带有目录? [问题描述] 当前章节列出该章 ...

  5. Word 多级节标题设置和图表章节号自动生成

    写文章的时候,正文.图表.节标题,通过“样式”可以进行统一设置,这里我记录了几点小技巧: 1.多级标题如何设置 假设我要设置三级标题,下面以图的形式记录方式: 设置完之后,应用即可. 章节设定之后,可 ...

  6. LaTeX技巧472:定义一个LaTeX参考文献不带编号且有缩进的方法

    LaTeX_Fun的博客 LaTeX技巧381:参考文献项第二行缩进如何定义? \makeatletter\renewenvironment{thebibliography}[1]{\section* ...

  7. 【Unity3D技巧】在Unity中使用事件/委托机制(event/delegate)进行GameObject之间的通信 (二) : 引入中间层NotificationCenter

    作者:王选易,出处:http://www.cnblogs.com/neverdie/ 欢迎转载,也请保留这段声明.如果你喜欢这篇文章,请点[推荐].谢谢! 一对多的观察者模式机制有什么缺点? 想要查看 ...

  8. LaTeX技巧892: Ubuntu 安装新版本TeXLive并更新

    原文地址:http://www.latexstudio.net/archives/9788.html 摘要: 本文比较系统地介绍了在Ubuntu下的TeXLive的安装与配置测试过程,建议使用Ubun ...

  9. Latex 仅使用 hyperref 包中 \href 的方法

    参考: How to ask hyperref works only with href Latex 仅使用 hyperref 包中 \href 的方法 在 .tex 文件的开头使用如下方法引用 hy ...

随机推荐

  1. sql 转 markdown

    https://github.com/2liang/AutoBuildDocFromDB SQL脚本生成数据字典 http://www.jianshu.com/p/f491d0d3c503 这两个脚本 ...

  2. vivado2016.2下系统自带DDR3 ip例程仿真运行

    背景:从ISE14.7迁移到vivado2016.2. xilinx的软件改的真是不一般的大.两个软件操作差距真是让人想骂人.由于项目需要,准备调试DDR3.对于新手来说,例化一个DDR3 ip.如果 ...

  3. UVa 11997 K Smallest Sums 优先队列&&打有序表&&归并

    UVA - 11997 id=18702" target="_blank" style="color:blue; text-decoration:none&qu ...

  4. Spring的AOP配置

    Spring的AOP配置 1.先写一个普通类: package com.spring.aop; public class Common {  public void execute(String us ...

  5. CenOS下安装Memcache和PHP Memcache扩展.

    I.安装Memcahce 1. 安装依赖包libevent Memcache需要安装libevent,所以安装前可能需要执行 yum install libevent-devel 2.安装memcac ...

  6. linux list

    一篇介绍链表不错的文章: 1. 玩转C链表 2. openwrt使用list 3. 深入分析 Linux 内核链表 https://www.ibm.com/developerworks/cn/linu ...

  7. mysql explain22222 system > const > eq_ref > ref > fulltext > ref_or_null > index_merge > unique_subquery > index_subquery > range > index > ALL

    MySQL性能分析及explain用法的知识是本文我们主要要介绍的内容,接下来就让我们通过一些实际的例子来介绍这一过程,希望能够对您有所帮助. .使用explain语句去查看分析结果 如explain ...

  8. docker导入导出

    导出镜像 docker save -o centos7.tar centos # 导入本地镜像 docker load --input centos7.tar docker ps -a docker ...

  9. android:clearTaskOnLaunch的用法

    比如你的应用里有N个Activity,其中有个是设置页面,你从主页面进入到设置页面设置了一些东西之后,突然,按了下Home键,回到了Android的Home,这时候你做了些别的事情,然后你再次点击你的 ...

  10. ThinkPHP -- 问题

    @.nginx下,找不到页面,如果然nginx支持pathinfo模式 原文:http://www.leixuesong.cn/1418 把文章的配置拷贝了下.