我正在尝试使用宏作为pgfplotstable
标签,但宏被视为 csl 的单个条目而不是 csl。
提出的问题使用宏作为 \includepdf 中 addtotoc 的值回答了我的问题,但我无法做到同样的事情。
test.csv
:
category, value, value 2
cat a, 1, 7
cat b, 2, 6
cat c, 3, 5
cat d, 4, 4
cat e, 5, 3
cat f, 6, 2
cat g, 7, 1
代码:
\def\blah{a,b,c,d,e,f,g}
\def\plotTable{
\begin{tikzpicture}
\begin{axis}[ybar,
ymin=0,
xlabel=X Label,
ylabel=Y Label,
xticklabel style={text height=1.5ex},
xtick=data,
xticklabels={\blah},
nodes near coords,
nodes near coords align={vertical},
width=80mm,
height=80mm,
area legend,
legend pos=outer north east,
legend entries={a,b},
bar width=3mm]
\addplot table [x expr=\coordindex, y=value, col sep=comma] {test.csv};
\addplot table [x expr=\coordindex, y=value 2, col sep=comma] {test.csv};
\end{axis}
\end{tikzpicture}
}
手动输入
xticklabels={a,b,c,d,e,f,g},
显示每列的标签(而不是聚集到第一列进行标记)
有没有简单的方法可以将宏放在那里?
谢谢
答案1
@Jake 在评论中给出了答案:
使用
xticklabels/.expand once=\blah
而不是xticklabels=\blah
谢谢!