Saltar al contenido

Numeración continua versus por capítulo / sección de figuras, tablas y otros elementos del documento

Nuestro grupo especializado pasados algunos días de investigación y de juntar de datos, obtuvieron la respuesta, nuestro deseo es que te sea de gran utilidad en tu trabajo.

Solución:

Cambiar la numeración de (por ejemplo) figuras implica dos modificaciones:

  1. Redefiniendo si el figure el contador se reiniciará siempre que se incremente el contador de capítulos / secciones;

  2. Redefiniendo la “apariencia” del figure encimera (thefigure), es decir, eliminar (o agregar) el capítulo / sección prefix.

Solución estándar: chngcntr

La solución estándar, que se ocupa de las modificaciones 1 y 2 mencionadas anteriormente, es utilizar el counterwithout y counterwithin macros del chngcntr paquete. El siguiente ejemplo muestra cómo lograr una numeración continua de cifras en el book clase:

documentclassbook

usepackagechngcntr
counterwithoutfigurechapter

begindocument

chapterfoo

beginfigure
centering
rule1cm1cm% placeholder for graphic
captionA figure
endfigure

enddocument

Por el contrario, aquí se explica cómo lograr la numeración de figuras por sección en el article clase:

documentclassarticle

usepackagechngcntr
counterwithinfiguresection

begindocument

sectionfoo

beginfigure
centering
rule1cm1cm% placeholder for graphic
captionA figure
endfigure

enddocument

Funciona de la misma manera para (por ejemplo) tablas, flotantes personalizados, ecuaciones y notas al pie. (Tenga en cuenta que en muchas clases de documentos con chapter comando, las notas a pie de página están numeradas por capítulo aunque el footnote el contador no muestra el capítulo prefix.) Las macros de chngcntr también se puede utilizar para entornos de teoremas; Sin embargo, es más fácil especificar la numeración de un nuevo entorno de teorema al definirlo:

newtheoremthmTheorem% Continuous numbering
newtheorempropProposition[section]% Per-section numbering

También puede personalizar la numeración de los títulos de las secciones. Para, digamos, lograr la numeración continua de secciones en el book clase (por defecto, están numerados por capítulo), pero la numeración de los capítulos por parte (que por defecto están numerados continuamente), su preámbulo debe contener

usepackagechngcntr
counterwithoutsectionchapter
counterwithinchapterpart

Para influir en la puesta a cero de contadores. sin cambiando su apariencia, use las estrellas macro versiones counterwithout* y counterwithin*. Por ejemplo, para la numeración de figuras por sección en el article clase – pero sin adjuntar una sección prefix para thefigure -, agregue lo siguiente a su preámbulo:

usepackagechngcntr
counterwithin*figuresection

También es posible redefinir el restablecimiento y la apariencia de un contador cualquier número de veces en el cuerpo del documento. Tenga en cuenta que counterwithout, counterwithin y sus variantes no afectarán el valor actual del contador; para cambiar este último, use setcounter.

Solución AMSmath

Las clases AMS y el amsmath característica del paquete el numberwithin macro que coincide chngcntrs counterwithin. Sin embargo, no existe un AMS equivalente a counterwithout. Ejemplo de uso: numberwithinequationsection. Vea el ejemplo completo de cmhughes. Si usa matemáticas, es posible que prefiera cargar amsmath de todos modos y usando numberwithin.

Otras soluciones

Con el memoir clase, no es necesario cargar chngcntr porque memoir emula la funcionalidad del paquete. Solo usa counterwithout y counterwithin como se describió anteriormente.

los caption el paquete incluye el key–Opciones de valor figurewithin y tablewithin que permiten cambiar la numeración de figuras y tablas (sorpresa). Los valores de opción permitidos son chapter, section, y none. (Para el primer ejemplo de código anterior, esto se traduce en usepackage[figurewithin=none]caption.)

los listings usos del paquete AtBeginDocument para definir el lstlisting contador del entorno del mismo nombre. Para desactivar la numeración por capítulo del entorno para las clases que cuentan con chapter, asunto lstsetnumberbychapter=false en el preámbulo del documento. Para habilitar la numeración por sección para clases sin chapter, agregue lo siguiente a su preámbulo:

usepackagechngcntr
AtBeginDocumentcounterwithinlstlistingsection

La respuesta de Patryk funciona perfectamente. Pero debe restablecer el contador de tablas, figuras, ecuaciones, etc. manualmente cada vez que desee volver a iniciar las etiquetas de sus objetos en “1”. Por lo tanto, sería más adecuado, por ejemplo, para un artículo con algunos apéndices que para un libro con muchos capítulos.

los renewcommand línea que solo tiene que configurar una vez.

La ventaja es que es súper simple y flexible.

Como esto:

setcounterfigure0
renewcommandthefigureAarabicsection.arabicfigure

Para crear “Figura A1.1”

Tu tambien puedes hacer

renewcommandthefigureAppendix~arabicsection.arabicfigure

para obtener la “Figura Apéndice 1.1” (si siente la necesidad).

O

renewcommandthefigureAarabicsection.arabicsubsection.arabicfigure

para obtener la “Figura A1.1.1” para la Figura 1 en la subsección 1 de la sección A1.

Curiosamente, nadie mencionó el paquete. remreset y es @removefromreset macro o el núcleo de LaTeX macro @addtoreset todavía.

Consulte para otra versión con xassoccnt al final de esta publicación.

documentclassbook

usepackageremreset
makeatletter
@removefromresetfigurechapter
renewcommandthefigurearabicfigure

@addtoresetfiguresection
makeatother


begindocument

chapterFirst
beginfigure
captionFirst figure
endfigure
chapterSecond

beginfigure
captionSecond figure
endfigure

sectionA section that causes resetting of figure

beginfigure
captionThird figure
endfigure


enddocument

Utilizando xassoccnt hay RemoveFromReset y AddToReset (sin uso makeatletter...makeatother

documentclassbook

usepackagexassoccnt

RemoveFromResetfigurechapter
AddToResetfiguresection
renewcommandthefigurearabicfigure


begindocument

chapterFirst
beginfigure
captionFirst figure
endfigure
chapterSecond

beginfigure
captionSecond figure
endfigure

sectionA section that causes resetting of figure

beginfigure
captionThird figure
endfigure


enddocument

Tenga en cuenta que hay RemoveFromFullReset también, lo que elimina el contador y su propia lista de restablecimiento de la lista de restablecimiento del controlador.

Actualizar A partir de la versión 1.3 de xassoccnt, AddToReset, RemoveFromReset admite lista de contadores separados por comas que se agregarán o eliminarán de la lista de restablecimiento de contadores de controladores. La versión actual es 1.5, a partir del 20/10/2017.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *