I am writing my PhD thesis. In my manuscript I have Figures in the text and Photographic plates (a figure of figures) in the annexes. The two elements are different and I would like create a new environment of Plate that follows the same structure of the Figure environment. Where can I find the Figure environment to modify it?

The new environment table should have exactly the same structure than the figure environment but replacing the word figure by the word Planche (in French).

  • 2
    Please comment concerning whether you also need to create a list of figures that will be separate from the list of planche's, as this would complicate (I imagine) the answer. Presumably, you would want a separate counter as well. Commented Dec 3, 2010 at 15:35

5 Answers 5


There is now a new dedicated package newfloat which allows the definition of new floats. It does this in the same format like the original floats figure and table without forcing a specific format, like the float package does.

The newfloat package is part of the caption bundle and was extracted from the related code of the caption package by its author (on my request).

An example of define a new floating environment named scheme is:

    listname={List of Schemes},
  • 2
    Maybe you could include the meaning of those options? (For example how is listname used?)
    – Kvothe
    Commented Mar 24, 2021 at 11:03
  • 1
    I am getting a weird numbering. I thought the "scheme" environment would get its own numbering. I.e. I want the first scheme to get the number 1. etc... Instead the section number seems to be used.
    – Kvothe
    Commented Mar 24, 2021 at 11:08
  • 1
    Okay the answer seems to be to not use within=...
    – Kvothe
    Commented Mar 24, 2021 at 11:09

To do this in the raw, use the float or floatrow packages.


Alternatively, the trivfloat package aims to wrap up the complexities of float(row) so that you only have to do


(Note: I wrote trivfloat.)

As you might guess, trivfloat makes things easy but at the cost of flexibility. If you want full control over the process, use float (or floatrow).

  • 1
    One drawback of float IMHO is that it forces a certain style. Apparently it collects the content of the float in a box and places the caption afterwards (which got only stored by \caption). You loose the possibility to place multiple entries with own captions in one floats using minipages etc. Commented Jul 2, 2011 at 15:44

The »caption« package also masters to create new float environments with corresponding lists.





    \caption{Dummy scheme}\label{sch:dummy}



Nowadays the »newfloat« package (as part of the »caption« bundle) package is the way to go.


You probably want to look at the float package, which allows you to define and set up new floats with quite simple commands.

In your preamble: \usepackage{float}

Then, you define new floats using the following syntax:


<type> is the ‘type’ of the new class of floats, like program or algorithm. After the appropriate \newfloat, commands like \begin{program} or \end{algorithm*} will be available. <placement> gives the default placement parameters for this class of floats. The placement parameters are the same as in standard LATEX, i.e., t, b, p and h for ‘top’, ‘bottom’, ‘page’ and ‘here’, respectively. When LATEX writes the captions to an auxiliary file for the list of figures (or whatever), it’ll use the job name followed by <ext> as a file name. Finally, the optional argument <within> determines whether floats of this class will be numbered within some sectional unit of the document. For example, if <within>=chapter, the floats will be numbered within chapters. (Source: package documentation)

Thus, you could do something like




There are many more configuration options, so please go to the documentation and see what you can do! =)


Since there aren't enough possibilities (and I haven't praised KOMA-Script today), yet, let me present another possibility. The package tocbasic (which is part of the KOMA-Script bundle and already loaded if you happen to use a KOMA class) let's you define new floating environments through its command


It is explained in detail in the KOMA-Script documentation. Here is an example how one could use it:


  types=plates,% used in the \listof.. command
  float,% define a floating environment
  floattype=4,% see below
  listname={Table des planches}%

% About the `floattype' option:
% The numerical float type of the defined floats. Float types with common bits
% cannot be reordered. At the standard classes figures has float type 1 and tables
% has floatype 2. If no float type was given, 16 will be used.



 \caption{a caption}


enter image description here

  • I just tried this nifty solution out. It has the advantage, e.g. over trivfloat, that a KOMA-Script-option such as list=nochaptergap was automatically applied to the newly-declared list. This was especially useful to achieve a coherent format with different lists in one document.
    – Kubo
    Commented Sep 20, 2017 at 16:38

You must log in to answer this question.