Aggiunta di una didascalia a un'equazione in LaTeX
-
02-07-2019 - |
Domanda
Beh, sembra abbastanza semplice, ma non riesco a trovare un modo per aggiungere una didascalia a un'equazione. La didascalia è necessaria per spiegare le variabili utilizzate nell'equazione, quindi una sorta di struttura simile a una tabella per mantenere tutto allineato e bello sarebbe eccezionale.
Soluzione
Il comando \ caption
è limitato ai float: dovrai posizionare l'equazione in un ambiente di figura o tabella (o un nuovo tipo di ambiente mobile). Ad esempio:
\begin{figure}
\[ E = m c^2 \]
\caption{A famous equation}
\end{figure}
Il punto dei float è che lasci che LaTeX determini il loro posizionamento. Se vuoi che l'equazione appaia in una posizione fissa, non usare un float. Il comando \ captionof
di pacchetto di didascalie può essere utilizzato per posizionare una didascalia al di fuori di un ambiente mobile. Viene utilizzato in questo modo:
\[ E = m c^2 \]
\captionof{figure}{A famous equation}
Questo produrrà anche una voce per \ listoffigures
, se il tuo documento ne ha uno.
Per allineare parti di un'equazione, dai un'occhiata a eqnarray
ambiente o alcuni ambienti dell'ambiente pacchetto amsmath : allinea, raccogli, multilinea, ...
Altri suggerimenti
Potresti voler guardare http://tug.ctan.org/tex-archive/macros/latex / contrib / float / che ti permette di definire nuovi float usando \newfloat
Lo dico perché i sottotitoli vengono generalmente applicati ai float.
Equazioni diritte (quelle scritte con $ ... $
, $$ ... $$
, iniziano {equazione} ... ) sono oggetti in linea che non supportano
\ caption
.
Questo può essere fatto usando il seguente snippet poco prima di \ begin {document}
\usepackage{float}
\usepackage{aliascnt}
\newaliascnt{eqfloat}{equation}
\newfloat{eqfloat}{h}{eqflts}
\floatname{eqfloat}{Equation}
\newcommand*{\ORGeqfloat}{}
\let\ORGeqfloat\eqfloat
\def\eqfloat{%
\let\ORIGINALcaption\caption
\def\caption{%
\addtocounter{equation}{-1}%
\ORIGINALcaption
}%
\ORGeqfloat
}
e quando aggiungi un'equazione usa qualcosa come
\begin{eqfloat}
\begin{equation}
f( x ) = ax + b
\label{eq:linear}
\end{equation}
\caption{Caption goes here}
\end{eqfloat}
Come in questo post del forum di Gonzalo Medina , una terza via potrebbe essere:
\documentclass{article}
\usepackage{caption}
\DeclareCaptionType{equ}[][]
%\captionsetup[equ]{labelformat=empty}
\begin{document}
Some text
\begin{equ}[!ht]
\begin{equation}
a=b+c
\end{equation}
\caption{Caption of the equation}
\end{equ}
Some other text
\end{document}
Maggiori dettagli sui comandi utilizzati dal pacchetto caption
: qui .