我希望使用 pgfplotstable 更改一系列行的格式(特别是背景颜色)。对于一行(例如第 6 行)执行此操作非常简单,使用:
every row no 6/.style={
before row={
\rowcolor={orange}
}
}
但我希望能够将此操作应用于第 1-6 行或第 7-12 行等。有没有办法做到这一点,而不必为所涉及的每一行编写单独的格式?
答案1
这可以使用 TikZ 处理程序来完成/.list
。它的作用是向内部传递给 TikZ 机制的参数数组提供相同的参数foreach
。您只需将样式嵌入自定义样式并将数组传递给该样式即可。
\documentclass{article}
\usepackage{pgfplotstable,colortbl}
\begin{document}
\pgfplotstabletypeset[
my row iterator/.style={every row no #1/.style={
before row={
\rowcolor{orange}
}
}
},
my row iterator/.list={0,...,3,6}
]{
test1 test2 test3 test4 test5 test6 test7 test8 test9 test10
1 2 6 8 1 2 6 8 1 2
3 4 7 9 3 4 7 9 3 4
1 2 6 8 1 2 6 8 1 2
3 4 7 9 3 4 7 9 3 4
1 2 6 8 1 2 6 8 1 2
3 4 7 9 3 4 7 9 3 4
1 2 6 8 1 2 6 8 1 2
3 4 7 9 3 4 7 9 3 4
}
\end{document}