pgfplotstable:来自定义列表的列

pgfplotstable:来自定义列表的列

我有一张桌子

\pgfplotstableread[col sep=comma]{
1,2,3,4,5,6,7
}\mytable

列号为 0,1,...,6。

为什么我不能说\def\List{0,3,5}然后

\pgfplotstabletypeset[
columns={\List}    %    Works not
]{\mytable}

我需要做什么?

在此处输入图片描述

\documentclass[a4paper]{article}
\usepackage{pgfplotstable}
\pgfplotsset{compat=1.17,
every head row/.style={after row=\hline},
}

\pgfplotstableread[col sep=comma]{
1,2,3,4,5,6,7
}\mytable
\begin{document}
\section{Main Table}
\pgfplotstabletypeset[]{\mytable}

\section{Works}
\pgfplotstabletypeset[columns={0,3,5}]{\mytable}

\section{List works not}
\def\List{0,3,5}

\pgfplotstabletypeset[
%columns=\List        %   Works not 
%columns={\List}    %    Works not
]{\mytable}
\end{document}

答案1

这就是/.expanded钥匙的用途。

\documentclass[a4paper]{article}
\usepackage{pgfplotstable}
\pgfplotsset{compat=1.17,
every head row/.style={after row=\hline},
}

\pgfplotstableread[col sep=comma]{
1,2,3,4,5,6,7
}\mytable
\begin{document}
\section{Main Table}
\pgfplotstabletypeset[]{\mytable}

\section{Works}
\pgfplotstabletypeset[columns={0,3,5}]{\mytable}

\section{List works not}
\def\List{0,3,5}

\pgfplotstabletypeset[
columns/.expanded=\List        %   Works
]{\mytable}
\end{document}

相关内容