Из-за рекомендации на этом форуме я решил использовать pgfplotstable в своих лабораторных отчетах для импорта данных из CSV и печати их в виде таблицы в LaTeX. Однако в таком разделе, как мои приложения, мне нужно, чтобы таблицы были под заголовками (а не над ними), так как мне заставить LaTeX поместить таблицу туда, где я ее поместил в своем коде.
Образец:
\appendix
\appendixpage
\section{Tables}
\begin{subappendices}
\subsection{Heading 1}
\pgfplotstableread{mydata.csv}{\mydatalabel}
\begin{table}
\centering
\caption[LoT Caption]{Full Caption}
\pgfplotstabletypeset[%
every head row/.style={
before row=\toprule, after row=\midrule},
every last row/.style={
after row=\bottomrule},
]{\mydatalabel}
\label{table:mydatalabel}
\end{table}
LaTeX выполнит автоматическое форматирование и разместит мои таблицы над заголовком 1 (и другими заголовками тоже).
До использования pgfplotstables я использовал этот код для своих таблиц, чтобы принудительно разместить их там, где им положено быть:
\begin{center}
\captionof{table}[LoT Caption]{Full Caption}
\begin{tabular}{c c c c}
\toprule
\bottomrule
\label{table:mydatalabel} \\
\end{tabular}
\end{center}
Можно ли сделать что-то подобное? Мне очень нравится pgfplotstables, так как мне больше не нужно вручную вводить данные в таблицы.
решение1
Ничто не должно \pgfplotstabletypeset
использоваться внутри table
среды; его можно использовать в любом месте, где tabular
может использоваться среда.
Вы можете застрять на \label
команде, появляющейся внутри tabular
среды в вашем последнем фрагменте кода. Для этого также нет никаких требований. Пока\label
приходитпосле, он \caption
будет работать так, как и ожидалось.
Итак, вот как это можно сделать. Я использовал пример файла данных из pgfplotstable
руководства, поскольку у меня нет доступа к вашему файлу данных:
\documentclass{article}
\usepackage{capt-of,pgfplotstable}
\pgfplotsset{compat=1.12}
\begin{document}
Table~\ref{table:mydata} is typeset just fine by \verb|pgfplotstable|,
even outside of a \verb|table| environment.
\begin{center}
\captionof{table}[Short Caption]{This is the full, long-form caption.}
\label{table:mydata}
\pgfplotstabletypeset[columns={dof,error1}]{pgfplotstable.example1.dat}
\end{center}
\end{document}