\pgfplotstableread{...} 内のコメントはエラーの原因になります

\pgfplotstableread{...} 内のコメントはエラーの原因になります

\pgfplotstableread{}パッケージのコマンドを使用してpgfplotstable、手動でテーブルに入力します。

\documentclass{article}
\usepackage{pgfplotstable}

\begin{document}

\pgfplotstableread{
  Col1  Col2
  p0    Text0
  p1    Text1%blabla
  p2    Text2
  p3    Text3
}\mytable

\end{document}

行末のコメントにバグがあるようです。提供された例では、次のエラーが発生します。

パッケージ pgfplots エラー: テーブル '<inline_table>' の 3 行目の列数が多すぎるようです: 'Text2' は無視されます。PGFPlots は、列数が以前に決定された列数よりも大きいことを検出しました。各セル エントリが正しく区切られていることを確認してください (必要に応じて中括弧 {} を使用します。また、列名がプレーン ASCII であることを確認してください)。このエラーは重大ではありません。

何が起こっているのかよく分かりませんが、 を削除すると%blabla、ドキュメントは正常にコンパイルされます。これまで、行末のコメントは Latex では「見えない」ものだと思っていました。

答え1

マニュアルに[row sep=newline]は、それがデフォルトであるにもかかわらず、壊れやすいと書かれています。できる行の先頭に を入力する%と、行全体が無視されます。

\documentclass{article}
\usepackage{pgfplotstable}

\begin{document}

\pgfplotstableread[every column/.style={string type},row sep=\\]{
  Col1  Col2\\
  p0    Text0\\
  p1    Text1\\%blable
  p2    Text2\\
  p3    Text3\\
}\mytable

\pgfplotstabletypeset[every column/.style={string type}]{\mytable}

\end{document}

関連情報