向 pgfplotstable 添加行号

向 pgfplotstable 添加行号

我看了附件的答案自动表格行号但我不确定如何将其应用于 pgfplotstable。我想在我的表格上自动获得行号,这样我就可以通过行索引应用格式。(用于小计等)。

我有超过 100 行,因此很难通过视觉扫描知道行号,并且列没有命名,因此

\pgfplotstableset{create on use/new/.style={create col/set={\thisrow{columns={0}}}}}

随后是

\pgfplotstabletypeset[columns={new,0,1,2,3,4,5,6,7}]\blah

不起作用并给出错误。有没有一种简单的方法可以在 pgfplotstable 中自动获取行号?

答案1

您可以使用键every first column在第 1 列的开头显示计数器值:

在此处输入图片描述

笔记:

  • 如您所见,我对 并没有太多经验pgfplotstable,因此格式不好。稍后会回来修复这些列。

代码:

\documentclass{article}
\usepackage{,pgfplotstable}

\usepackage{filecontents}
  \begin{filecontents*}{sample.csv}
    Column A, Column B, Column C
       99, 98, 96
       88, 87, 84
  \end{filecontents*}

\pgfplotstableread[col sep=comma]{sample.csv}\MySampleData

\newcounter{MyCount}
\begin{document}

\pgfplotstabletypeset[
    every first column/.style={column type/.add={>{\makebox[3em][l]{\arabic{MyCount}\stepcounter{MyCount}~}}}{} }
]\MySampleData

\end{document}

答案2

您可以使用以下密钥create col/expr accum

\documentclass{article}
\usepackage{pgfplotstable}
\pgfplotstableset{create on use/new/.style
  = {create col/expr accum={\pgfmathaccuma+1}{0}}}
\begin{document}
\pgfplotstableread{
  3 7 2 7 8 1 6 3
  7 3 0 2 3 7 2 5
  1 6 3 7 4 9 7 2
  4 8 2 9 6 3 5 2
}\mytable
\pgfplotstabletypeset[columns={new,0,1,2,3,4,5,6,7}]\mytable
\end{document}

相关内容