Footnotes in tables?

I would like to have footnotes in tables, but the \footnote command does not work inside a table environment. Googling one finds that this is a frequently asked question, at least in the UK. That link contains a list of solutions to the problem, but since the author of the FAQ does not believe that this is good style, no comparison is made between the different methods.

I am sure that there are good typographical reasons why in most situations it is undesirable to have footnotes in tables (although I have never come across them), however I have recently felt the need to do just this in a paper I am currently writing.

Therefore I'd like to ask two questions:

1. What are the arguments against footnotes in tables?

2. If one really must go against the advice in 1., which method (whether considered in the FAQ above or not) would you recommend?

In response to ShreevatsaR's comment: I do not much care for where the text of the footnote appears. I do however insist on the footnote marks being attached to the relevant entries in the table, so that I can avoid having to reference "the second entry in the eighth line of the table", etc...

-
The author of the FAQ entry distinguishes between (1) table notes, where the "footnote text" appears at the bottom of the table, and (2) "real" footnotes, where it appears at the bottom of the page outside the table. The author expresses his preference for the former; I also feel it makes sense to attach the footnote text to the table itself. This can be achieved by using either threeparttable or ctable. If you really want footnotes at the bottom of the page, outside the table, I'd just use tabularx, if only because it looks like minimal effort among the options. –  ShreevatsaR Aug 12 '10 at 1:52
@ShreevatsaR: I think your comment qualifies as an answer... –  Vivi Aug 12 '10 at 9:42
For the record, writing philological notes on Chinese prosody, it has been very useful to me to be able to place footnotes (real footnotes, in ShreevatsaR's parlance) on individual Chinese characters or their monosyllabic transcriptions, each of which appears in a single table cell. There is no clearer or more easily examined way that I can find. –  brannerchinese May 3 '11 at 0:32
observation: the question is phrased in terms of "tables", which are floats. it is not really useful even to try to set footnotes at the bottom of the page where a float happens to appear. however, most of the answers seem to relate to footnotes in tabulars (or -alike); whether one likes it or not (i don't) footnotes in tabulars are do-able. the faq offers options, iirc (as well as suggesting means of creating table notes. –  wasteofspace Nov 18 '11 at 11:18

I had this kind of problem about 10 years ago, and no package provided any trick at this time. My solution was the following. I managed footnotemarks and footnotetexts separately. Semantically it is not really satisfactory, but it works quite well. The only problem may be that the table could be placed in another page than the footnotetext :-(

\section{Footnotes in hostile environments}

\begin{table}[h]
\begin{center}
\begin{tabular}{c|c|c}
O & X\protect\footnotemark & O \\
\hline
X & O\protect\footnotemark & X \\
\hline
X & O & O
\end{tabular}
\end{center}
\caption{Victory for Gilles\protect\footnotemark}
\end{table}
\footnotetext{X}
\footnotetext{O}
\footnotetext{happy birthday Gilles ;-)}

and now, more difficult: two footnotes in a \fbox{hostile\footnotemark environment\footnotemark}~...
\footnotetext{or very hostile}
\footnotetext{area}

-
When hyperref is used, the hyperlinks unfortunately will not point to the right footnotes. –  Stephen Nov 18 '11 at 18:56
Very pragmatic solution! –  Benny Neugebauer Feb 8 '13 at 11:52

With the threeparttables you can add table notes.

-
It'd be great if someone could add a proof-of-concept to this answer. –  doncherry Mar 11 '12 at 17:01

Imho, I don't see any specific reason not to put footnotes in a table; however, if the content of the footnotes can be explained in the caption of the table itself, I'd prefer to use the caption. I'm used to write in the caption a short explanation of what in the table is, rather than a short title.

I suggest you to use the ctable package, using the \tnote command. From the package documentation:

The ctable package lets you easily typeset captioned table and ﬁgure ﬂoats with optional footnotes.

At page 3 of the documentation the \tnote command is explained, and at page 4 you can see a clear example.

-

The commands \savenotes and \spewnotes from the footnote package might help you.

-
and maybe this link might be of help as well users.ugent.be/~gdschrij/LaTeX/textricks.html#footnotetable –  slackenerny Aug 13 '10 at 23:54

You could use the tablefootnote package and \tablefootnote{...} inside the table:

\documentclass{article}
\usepackage{hyperref}
\usepackage{tablefootnote}
\begin{document}
\begin{table}
\centering
\begin{tabular}{ c  c }
Test1\tablefootnote{Footnote 1} & Test2\tablefootnote{Footnote 2} \\
\end{tabular}
\caption{This is a table.\label{FirstTable}}
\end{table}

A newpage:

\newpage

and a second page, so that you can see that the hyperlinks really work.

\end{document}

-

I think these two Q&A's ought to be merged; this answer (by dmckee) is my favourite:

This is a classic difficulty in LaTeX.

The problem is how to do layout with floats (figures and tables, an similar objects) and footnotes. In particular, it is hard to pick a place for a float with certainty that making room for the associated footnotes won't cause trouble. So the standard tabular and figure environments don't even try.

What can you do:

1. Fake it. Just put a hardcoded vertical skip at the bottom of the caption and then write the footnote yourself (use \footnotesize for the size). You also have to manage the symbols or number yourself with \footnotemark. Simple, but not very attractive, and the footnote does not appear at the bottom of the page.
2. Use the tabularx, longtable, threeparttable[x] (kudos to Joseph) or ctable which support this behavior.
3. Manage it by hand. Use [h!] (or [H] with the float package) to control where the float will appear, and \footnotetext on the same page to put the footnote where you want it. Again, use \footnotemark to install the symbol. Fragile and requires hand-tooling every instance.
4. The footnote package provides the savenote environment, which can be used to do this.
5. Minipage it (code stolen outright, and read the discalimer about long caption texts in that case):
    \begin{figure}
\begin{minipage}{\textwidth}
...
\caption[Caption for LOF]%
{Real caption\footnote{blah}}
\end{minipage}
\end{figure}