pgfplots:如何忽略数据文件的最后一行?

pgfplots:如何忽略数据文件的最后一行?

我需要绘制最后一行包含注释的数据文件,如下所示:

0  2  4
1  5  7
2  9  5  
3 11  15
4 10  15
THIS WAS: TOTAL

现在,pgfplots似乎有一个问题,它向我发出一条错误消息,抱怨列数不平衡。

我的问题是:我该如何pgfplots忽略数据文件的最后一行?(我知道这个skip first选项pgfplotstable。也许最后一行有一个等效项,但我在手册中找不到。)

梅威瑟:

\documentclass{standalone}

\usepackage{pgfplots}
\usepackage{pgfplotstable} % For \pgfplotstableread

\usepackage{filecontents}

\begin{filecontents}{total.dos}
0  2  4
1  5  7
2  9  5  
3 11  15
4 10  15
THIS WAS: TOTAL
\end{filecontents}

\pgfplotstableread{total.dos}\total

\begin{document}
\begin{tikzpicture}
\begin{axis}
\addplot [no markers, red] table [x=0, y=1] {\total}; \addlegendentry{$1$}
\addplot [no markers, blue] table [x=0, y=2] {\total}; \addlegendentry{$2$}

\end{axis}
\end{tikzpicture}
\end{document}

答案1

最简单的方法是添加额外的行注释字符。例如:

\pgfplotstableread[comment chars={T}]{total.dos}\total

将正确编译,即“T”现在被视为开始注释行。

相关内容