Notas al pie para tablas en LaTeX


87

Cuando lo hago \footnote{}por un valor en una tabla, la nota al pie no aparece. ¿Cómo hago para que aparezca? Además, ¿es posible que aparezca en la parte inferior de la tabla en lugar de en la parte inferior de la página?


Respuestas:


72

Esta es una dificultad clásica en LaTeX.

El problema es cómo hacer un diseño con flotadores (figuras y tablas, objetos similares) y notas al pie. En particular, es difícil elegir un lugar para un flotador con la certeza de que dejar espacio para las notas al pie asociadas no causará problemas. Así que el estándar tabulary los figureentornos ni siquiera lo intentan.

Qué puedes hacer:

  1. Fíngelo. Simplemente coloque un salto vertical codificado en la parte inferior del título y luego escriba la nota al pie usted mismo (use \footnotesizepara el tamaño). También tienes que gestionar los símbolos o numerarte tú mismo \footnotemark. Sencillo, pero no muy atractivo, y la nota al pie no aparece al pie de la página.
  2. Utilice el tabularx, longtable, threeparttable[x](felicitaciones a José ) o ctablelos que apoyan este comportamiento.
  3. Manejalo a mano. Use [h!](o [H]con el paquete flotante) para controlar dónde aparecerá el flotante, y \footnotetexten la misma página para poner la nota al pie donde lo desee. Nuevamente, use \footnotemarkpara instalar el símbolo. Frágil y requiere herramientas manuales en cada instancia.
  4. El footnotespaquete proporciona el savenoteentorno que se puede utilizar para hacer esto.
  5. Minipajíelo (código robado por completo y lea el descargo de responsabilidad sobre textos de subtítulos largos en ese caso):
    \ begin {figure}
      \ begin {minipage} {\ textwidth}
        ...
        \ caption [Subtítulo para LOF]%
          {Título real \ nota al pie {blah}}
      \ end {minipage}
    \ end {figura}

Referencia adicional: Notas al pie de los elementos de las preguntas frecuentes de TeX en las tablas .


texblog.org/2012/02/03/using-footnote-in-a-table me parece una buena alternativa
Pio

1
@dmckee ¿Es posible obtener threeparttable en xtable: algo como print.xtable (df, tabular.environment = "threeparttable")?
Anusha

El enlace @Pio es una gran referencia. Usar el paquete de notas al pie resolvió mi problema.
JOHN

¿Cómo es que la respuesta más votada no está en la parte superior?
Eduardo Reis

59

La mejor manera de hacerlo sin ningún dolor de cabeza es usar el \tablefootnotecomando del tablefootnotepaquete. Agregue lo siguiente a su preámbulo:

\usepackage{tablefootnote}

Simplemente funciona sin necesidad de trucos adicionales.


17
En mi caso, el uso de \ tablefootnote hizo que apareciera la nota al pie, pero desafortunadamente en la página anterior a la de la tabla.
Nu-hin

¿Tiene un ejemplo para demostrar este comportamiento?
Francesquini

2
¿Existe alguna forma de colocar la nota al pie en la misma página que la tabla?
Anusha

3
Esto no me funciona en tablas anidadas (las notas al pie se repiten tantas veces como tablas anidadas)
fffred

1
Trabajando para mí usando el paquete flotante y [H] para la tabla para tener notas al pie en la misma página de la tabla.
mao95

15

Un método quizás no tan elegante, que creo que es solo una variación de lo que han dicho otras personas, es simplemente codificarlo. Muchas revistas tienen una plantilla que de alguna manera permite notas al pie de la tabla, así que trato de mantener las cosas bastante básicas. Aunque, realmente ya hay algunos paquetes increíbles, y creo que este hilo hace un buen trabajo al señalarlo.

\documentclass{article}
\begin{document}
\begin{table}[!th]
\renewcommand{\arraystretch}{1.3} % adds row cushion
\caption{Data, level$^a$, and sources$^b$}
\vspace{4mm}
\centering
\begin{tabular}{|l|l|c|c|}
  \hline      
  \textbf{Data}  & \textbf{Description}   & \textbf{Level} & \textbf{Source} \\
  \hline      
  \hline
  Data1  &  Description. . . . . . . . . . . . . . . . . .   &  cnty & USGS \\
  \hline
  Data2  &  Description. . . . . . . . . . . . . . . . . .   &  MSA & USGS \\
  \hline
  Data3  &  Description. . . . . . . . . . . . . . . . . .   &  cnty & Census  \\
  \hline  
\end{tabular}
\end{table}
\footnotesize{$^a$ The smallest spatial unit is county, $^b$ more details in appendix A}\\
\end{document}

Salida del código anterior


11

Si su tabla ya está funcionando tabular, lo más fácil es cambiarla y longtablerecordar agregar

\usepackage{longtable}

Por ejemplo:

\begin{longtable}{ll}
  2014--2015 & Something cool\footnote{first footnote} \\
  2016-- & Something cooler\footnote{second footnote}
\end{longtable}

2
Eso no funcionó para mí. Todavía no aparece. ¿Hay algo más que deba cambiar excepto agregar esa línea?
Emanuel Berg

2
Ajá, el comando de inicio / fin de la tabla también debe cambiarse. Te tengo.
Emanuel Berg

1
¿Puede proporcionar un ejemplo completo, por favor? No puedo hacer que esto funcione
user2808117

7

Utilice el entorno de minipágina. Aquí hay un ejemplo:

\begin{minipage}{6cm}
\begin{tabular}{|l|c|c|}
    \hline
    A & 1 & 2 \footnote{This is a footnote.} \\
    \hline
    B & 2 & 1 \\
    \hline
    C & 3 & 3 \\
    \hline
\end{tabular}
\end{minipage}

1
En mi caso, imprime la nota al pie dos veces y, en lugar de sentarse en la parte inferior de la página, se coloca justo debajo de la mesa en el medio de la página.
kakyo


2

En las tablas he usado \ footnotetext.


2
\begin{figure}[H]
\centering
{\includegraphics[width=1.0\textwidth]{image}}
\caption{captiontext\protect\footnotemark}
\label{fig:}
\end{figure}
\footnotetext{Footnotetext} 

0

Lo que dijo @dmckee.

No es difícil escribir su propio código de cola de notas al pie a medida. Lo que debes hacer es:

  1. Escriba código para poner en cola el código de Latex, como un gancho en emacs: técnica muy estándar, si no todos los hackers de Latex pueden hacerlo bien;
  2. Redefina temporalmente \footnotepara agregar una macro de nota al pie a su cola;
  3. Asegúrese de que se llame al gancho cuando la tabla / figura salga y volvamos al modo vertical normal.

Si esto es interesante, muestro un código que hace esto.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.