如何对图表、表格和列表使用相同的编号计数器?

如何对图表、表格和列表使用相同的编号计数器?

换句话说,有:

表 1
表 2
图 3
清单 4
图 5
等等...

我目前有:

\makeatletter \let\c@table\c@figure\c@lstlisting \makeatother

但它只适用于表格和图形。

答案1

\makeatletter \let\c@table\c@figure\c@lstlisting \makeatother

为了完成预期的改变,你需要完成两项任务

\makeatletter 
\let\c@table\c@figure
\let\c@lstlisting\c@figure
\makeatother

但即使只有figureandtable这个分配也不起作用。它强制环境使用相同的数字,但它们是不同的浮点数,因此 latex 将分别处理它们,并且只保持表格与表格的顺序以及图形与图形的顺序,因此您的文档可能

表 2 图 1 表 3

如果第一个数字浮过第一个表格。

如果你想要相同的计数器,你应该告诉 latex 保持浮点数的顺序相同,这意味着使用相同的浮点数类型,所以通常的方法是把所有的图表和列表放在一个figure环境中,这样文档就会有

图 1 图 2 图 3

其中图形包含图像或者tabular取决于内容。


如果你真的想要按相同顺序使用不同命名的浮点数,您还需要

\let\ftype@table\ftype@figure
\let\ftype@listings\ftype@figure

但对于那些只看表格并看到一组不连续的数字的人来说,这仍然会非常令人困惑。

相关内容