Как я могу «заставить» pgfplotstable находиться под заголовком

Как я могу «заставить» pgfplotstable находиться под заголовком

Из-за рекомендации на этом форуме я решил использовать 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}

введите описание изображения здесь

Связанный контент