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?


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 .


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.


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


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}

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}

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


2

Dalam tabel saya telah menggunakan \ footnotetext.


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

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.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.