使用 longtable 将 pgfplotstable 的第一行和最后一行保存在一页上

使用 longtable 将 pgfplotstable 的第一行和最后一行保存在一页上

我正在使用pgfplotstablelongtable一切运行良好,但有时一行可能位于一页上,这有点丑陋。我怎样才能将表格的前 3 行和后 3 行保留在同一页上?

谢谢!


以下是我迄今为止使用的代码:

\pgfplotstabletypeset[
    begin table=\begin{longtable},
    end table=\end{longtable},
    every head row/.style={output empty row},
    every first row/.append style={before row={%
            \caption{Runtime results in milliseconds of the algorithms \ref{alg:search-rg} and \ref{alg:search-rg-astar} tested on the potato network.}\label{tbl:results_potato}\\\hline%
        Depth & \textsc{Bfs} & \textsc{Norm} & \textsc{NowmW} & \textsc{Heur}\\\hline
            \endfirsthead
            \multicolumn{\pgfplotstablecols}{c}{{\tablename\ \thetable\ -- continued}}\\\hline
            Depth & \textsc{Bfs} & \textsc{Norm} & \textsc{NowmW} & \textsc{Heur}\\\hline
            \endhead
            \hline
            \multicolumn{\pgfplotstablecols}{r}{Continued on the next page.}
            \endfoot
            \hline
            \endlastfoot
        },
    },
    col sep=comma,
    string type,
    columns/Depth/.style={column name=Depth, column type={l}},
    columns/Bfs/.style={column name=\textsc{Bfs}, column type={n{5}{3}}},
    columns/Norm/.style={column name=\textsc{Norm}, column type={n{5}{3}}},
    columns/NormW/.style={column name=\textsc{NormW}, column type={n{5}{3}}},
    columns/Heur/.style={column name=\textsc{Heur}, column type={n{5}{3}}},
]{potato.csv}

基本上,告诉 pgfplotstable 使用 longtable,删除其自己的标题创建以对其进行自定义。

答案1

请始终发布完整的文档而不仅仅是片段。

您可以使用按键添加命令来控制分页。这里我在第 6 行强制分页,这样就只停止一行 + 标题在第 2 页。


1,2,3,4,5
a,b,c,d,e
a,b,c,d,e
a,b,c,d,e
A,B,C,D,E
A,B,C,D,E
a,b,c,d,e
a,b,c,d,e
A,B,C,D,E
A,B,C,D,E
11,22,33,44,55

\documentclass{article}
\usepackage{pgfplotstable,longtable}

\setlength\textheight{15\baselineskip}

\begin{document}

\pgfplotstabletypeset[
    begin table=\begin{longtable},
    end table=\end{longtable},
    every head row/.style={output empty row},
    every first row/.append style={before row={%
            \caption{Runtime results in milliseconds of the algorithms zzz and zzzz tested on the potato network.}\label{tbl:results_potato}\\\hline%
        Depth & \textsc{Bfs} & \textsc{Norm} & \textsc{NowmW} & \textsc{Heur}\\\hline
            \endfirsthead
            \multicolumn{\pgfplotstablecols}{c}{{\tablename\ \thetable\ -- continued}}\\\hline
            Depth & \textsc{Bfs} & \textsc{Norm} & \textsc{NowmW} & \textsc{Heur}\\\hline
            \endhead
            \hline
            \multicolumn{\pgfplotstablecols}{r}{Continued on the next page.}
            \endfoot
            \hline
            \endlastfoot
        },
    },
    every nth row={6}{before row=\pagebreak},%<<<<<<<<<<<<<<<<<
    col sep=comma,
    string type,
    columns/Depth/.style={column name=Depth, column type={l}},
    columns/Bfs/.style={column name=\textsc{Bfs}, column type={n{5}{3}}},
    columns/Norm/.style={column name=\textsc{Norm}, column type={n{5}{3}}},
    columns/NormW/.style={column name=\textsc{NormW}, column type={n{5}{3}}},
    columns/Heur/.style={column name=\textsc{Heur}, column type={n{5}{3}}},
]{potato.csv}

\end{document}

相关内容