Catatan kaki untuk tabel di LaTeX

87

Saat saya melakukannya \footnote{}untuk nilai dalam tabel, catatan kaki tidak muncul. Bagaimana cara menampilkannya? Juga, apakah mungkin menampilkannya di bagian bawah tabel daripada di bagian bawah halaman?

polk
sumber

Jawaban:

72

Ini adalah kesulitan klasik di LaTeX.

Masalahnya adalah bagaimana melakukan tata letak dengan float (gambar dan tabel, objek serupa) dan catatan kaki. Secara khusus, sulit untuk memilih tempat pelampung dengan kepastian bahwa memberi ruang untuk catatan kaki yang terkait tidak akan menimbulkan masalah. Jadi standar tabulardan figurelingkungan bahkan tidak mencoba.

Apa yang bisa kau lakukan:

  1. Berpura-pura. Letakkan saja lompatan vertikal hardcode di bagian bawah teks dan kemudian tulis catatan kaki sendiri (gunakan \footnotesizeuntuk ukurannya). Anda juga harus mengelola simbol atau nomor sendiri dengan \footnotemark. Sederhana, tetapi tidak terlalu menarik, dan catatan kaki tidak muncul di bagian bawah halaman.
  2. Gunakan tabularx, longtable, threeparttable[x](pujian kepada Yusuf ) atau ctableyang mendukung perilaku ini.
  3. Kelola dengan tangan. Gunakan [h!](atau [H]dengan paket float) untuk mengontrol di mana float akan muncul, dan \footnotetextdi halaman yang sama untuk meletakkan catatan kaki di tempat yang Anda inginkan. Sekali lagi, gunakan \footnotemarkuntuk menginstal simbol. Rapuh dan membutuhkan perkakas tangan setiap saat.
  4. The footnotespaket menyediakan savenotelingkungan, yang dapat digunakan untuk melakukan hal ini.
  5. Minipage itu (kode dicuri langsung , dan baca penafian tentang teks teks panjang dalam hal itu):
    \ begin {figure}
      \ begin {minipage} {\ textwidth}
        ...
        \ caption [Caption untuk LOF]%
          {Caption \ catatan kaki asli {blah}}
      \ end {minipage}
    \ end {figure}

Referensi tambahan: Item FAQ TeX Catatan kaki dalam tabel .

dmckee --- mantan moderator anak kucing
sumber
texblog.org/2012/02/03/using-footnote-in-a-table menurut saya alternatif yang bagus
Pio
1
@dmckee Apakah mungkin untuk mendapatkan threeparttable di xtable: sesuatu seperti print.xtable (df, tabular.environment = "threeparttable")?
Anusha
Tautan @ Pio adalah referensi yang bagus. Menggunakan paket catatan kaki memecahkan masalah saya.
JOHN
61

Cara terbaik untuk melakukannya tanpa sakit kepala adalah dengan menggunakan \tablefootnoteperintah dari tablefootnotepaket. Tambahkan yang berikut ini ke pembukaan Anda:

\usepackage{tablefootnote}

Ini hanya berfungsi tanpa perlu trik tambahan.

Francesquini
sumber
18
Dalam kasus saya, menggunakan \ tablefootnote membuat catatan kaki muncul, tapi sayangnya pada halaman sebelumnya dengan tabel.
Nu-hin
1
Apakah Anda memiliki contoh untuk menunjukkan perilaku ini?
Francesquini
2
Apakah ada cara untuk mendapatkan catatan kaki di halaman yang sama dengan tabel?
Anusha
3
Ini tidak berfungsi untuk saya dalam tabel bersarang (catatan kaki diulang sebanyak tabel bersarang)
fffred
1
Bekerja untuk saya menggunakan paket float dan [H] untuk tabel agar memiliki catatan kaki di halaman yang sama dari tabel.
mao95
17

Metode yang mungkin tidak terlalu elegan, yang menurut saya hanyalah variasi dari apa yang dikatakan beberapa orang lain, adalah dengan melakukan hardcode saja. Banyak jurnal memiliki template yang dalam beberapa hal memungkinkan untuk catatan kaki tabel, jadi saya mencoba untuk membuatnya tetap sederhana. Meskipun, sebenarnya sudah ada beberapa paket luar biasa di luar sana, dan saya pikir utas ini berfungsi dengan baik untuk menunjukkannya.

\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 dari kode di atas

Scott Worland
sumber
11

Jika tabel Anda sudah berfungsi tabular, maka yang paling mudah adalah dengan beralih ke longtable, ingat untuk menambahkan

\usepackage{longtable}

Sebagai contoh:

\begin{longtable}{ll}
  2014--2015 & Something cool\footnote{first footnote} \\
  2016-- & Something cooler\footnote{second footnote}
\end{longtable}
Keraguan
sumber
2
Itu tidak berhasil untuk saya. Itu masih belum muncul. Apakah ada hal lain yang harus saya ubah kecuali menambahkan baris itu?
Emanuel Berg
2
Aha, perintah start / end tabel harus diubah juga. Kena kau.
Emanuel Berg
1
Bisakah Anda memberikan contoh lengkap? Saya tidak bisa mendapatkan ini bekerja
pengguna2808117
7

Gunakan lingkungan minipage. Berikut ini contohnya:

\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}
wgzhao.dll
sumber
1
Dalam kasus saya, ini mencetak catatan kaki dua kali, dan bukannya duduk di bagian bawah halaman, itu berada tepat di bawah tabel di tengah halaman.
kakyo
5

Mungkin solusi terbaik adalah dengan melihat paket threeparttable / threeparttablex.

Joseph Wright
sumber
1
Berikut adalah beberapa informasi tentang cara menggunakan tabel tiga bagian. Itu berhasil untuk saya! dound.com/2009/06/…
Veridian
2

Dalam tabel saya telah menggunakan \ footnotetext.

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

Apa yang dikatakan @dckee.

Tidak sulit untuk menulis kode antrian catatan kaki Anda sendiri. Yang perlu Anda lakukan adalah:

  1. Tulis kode ke antrian kode Latex - seperti hook di emacs: teknik yang sangat standar, jika tidak setiap hacker Latex dapat melakukan ini dengan benar;
  2. Tentukan ulang \footnoteuntuk sementara untuk menambahkan makro catatan kaki ke antrian Anda;
  3. Pastikan hook dipanggil ketika tabel / gambar keluar dan kita kembali ke mode vertikal biasa.

Jika ini menarik, saya menunjukkan beberapa kode yang melakukan ini.

Charles Stewart
sumber