2010-05-22 3 views
64

Когда я делаю \footnote{} для значения в таблице, сноска не отображается. Как мне его показать? Кроме того, можно ли отображать его внизу таблицы, а не внизу страницы?Сноски для таблиц в LaTeX

+4

http://tex.stackexchange.com/a/35669/13747 – PHPst

ответ

2

В таблицах я использовал \ footnotetext.

5

Возможно, лучшим решением является просмотр пакетов threeparttable/threeparttablex.

+1

Вот некоторая информация о том, как использовать threeparttable. Это сработало для меня! http://dound.com/2009/06/latex-adding-footnotes-in-tables-or-other-floats/ – Veridian

58

Это классическая трудность в LaTeX.

Проблема заключается в том, как сделать макет с поплавками (рисунки и таблицы, аналогичные объекты) и сноски. В частности, трудно найти место для поплавка с уверенностью, что создание места для соответствующих сносок не вызовет проблем. Поэтому стандартные среды tabular и figure даже не пытаются.

Что вы можете сделать:

  1. подделать. Просто поместите жестко скопированный вертикальный снимок в нижней части заголовка, а затем напишите примечание самостоятельно (используйте размер \footnotesize). Вам также нужно управлять символами или самими цифрами с помощью \footnotemark. Простой, но не очень привлекательный, и сноска не отображается внизу страницы.
  2. Используйте tabularx, longtable, threeparttable[x] (kudos to Joseph) или ctable, которые поддерживают это поведение.
  3. Manage it by hand. Используйте [h!] (или [H] с поплавковым пакетом), чтобы контролировать, где появится поплавок, и \footnotetext на той же странице, чтобы поставить сноску там, где вы хотите. Опять же, используйте \footnotemark для установки символа. Хрупкий и требует ручной работы в каждом экземпляре.
  4. Пакет footnotes предоставляет среду savenote, которая может использоваться для этого.
  5. это мини-страницы (код stolen outright, и читать discalimer о длинных текстов субтитров в этом случае):
 
    \begin{figure} 
     \begin{minipage}{\textwidth} 
     ... 
     \caption[Caption for LOF]% 
      {Real caption\footnote{blah}} 
     \end{minipage} 
    \end{figure} 

Дополнительная ссылка: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=footintab.

+0

Или 6., DIY; не слишком сложно. –

+0

http://texblog.org/2012/02/03/using-footnote-in-a-table/ мне кажется приятной альтернативой – Pio

+0

+1 для трех частей! – Veridian

0

Что сказал @dmckee.

Нетрудно написать собственный код очереди для заказа на заказ. Что вам нужно сделать, это:

  1. Написать код в очередь Latex код — как крючок в Emacs: очень стандартный метод, если не каждый Latex хакер может на самом деле сделать это правильно;
  2. Временно переопределить \footnote, чтобы добавить макрос сноски в очередь;
  3. Убедитесь, что крюк вызывает вызов, когда стол/фигура выходит, и мы возвращаемся в обычный вертикальный режим.

Если это интересно, я показываю код, который делает это.

7

Используйте среду мини-парка.Вот пример:

\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

В моем случае он дважды печатает сноску, а вместо того, чтобы сидеть на нижней части страницы, он находится прямо под столом в середине страницы. – kakyo

6

Если таблица уже работает с tabular, то проще всего переключить его на longtable, не забывая добавить

\usepackage{longtable} 

Например:

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

Это не сработало для меня. Он все еще не появляется. Есть ли что-нибудь еще, что я должен изменить, кроме добавления этой строки? –

+2

Aha, команда начала и конца таблицы также должна быть изменена. Попался. –

+1

Можете ли вы представить полный пример, пожалуйста? Я не могу заставить это работать – user2808117

47

Лучший способ сделать это без какой-либо головной боли - использовать

\tablefootnote 

команда из tablefootnote пакета

\usepackage{tablefootnote} 

Он просто работает без необходимости дополнительных трюков.

+10

В моем случае, используя \ tablefootnote, появилась сноска, но, к сожалению, на странице, предшествующей той, что была у таблицы. –

+0

У вас есть пример, демонстрирующий это поведение? – Francesquini

+1

Есть ли способ получить сноску на той же странице, что и таблица? – Anusha

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

, может быть, не столь изящный метод, который я думаю, что это всего лишь разновидность того, что некоторые другие люди говорят, это просто жёстко его. У многих журналов есть шаблон, который каким-то образом позволяет использовать сноски для таблиц, поэтому я стараюсь держать вещи довольно простыми. Хотя, действительно есть некоторые невероятные пакеты уже там, и я думаю, что эта нить хорошо справляется с этим.

\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} 

Output from above code

Смежные вопросы