pgfplotstable: Auf 'column name' mit 'pgfkeysgetvalue' zugreifen
`https://tex.stackexchange.com/questions/457101/pgfplotstable-how-to-get-column-name-with-pgfkeysgetvalue`
___
In einer Tabelle
`\pgfplotstableread[header=true]{
A B
0 0
-1 1
3 2
}\test`
sollen `A` bzw. `B` als column names verwendet werden.
Mit `assign column name/.code=\pgfkeyssetvalue{/pgfplots/table/column name}{#1 irgendwas}`
kann ich das festlegen.
Doch wie kann ich nun mit `\pgfkeysgetvalue{/pgfplots/table/column name}{\Name} \Name` wieder darauf zugreifen?
Folgendes MWE funktioniert nicht:
[![alt text][1]][1]
text][1]][2]
\documentclass[border=5pt, varwidth]{standalone}
\usepackage{pgfplotstable}
\begin{document}
\pgfplotstableread[header=true]{
A B
0 0
-1 1
3 2
}\test
\pgfplotstabletypeset[string type,
assign column name/.code=\pgfkeyssetvalue{/pgfplots/table/column name}{#1 hhh},
display columns/0/.style={
postproc cell content/.style={@cell content={##1
\pgfplotstableset{columns/0/.try}%
\pgfkeysgetvalue{/pgfplots/table/column name}{\Name} \Name%
}}
},
]{\test}
\end{document}
**€dit:** Da die erste Problembeschreibung noch einigermaßen übersichtlich ist, wollte ich sie nicht löschen, daher als Edit.
Die column names stehen in der `head row`. Daher habe ich einmal `every head row/.style={...}` bemüht und die `default implementation` im Handbuch S.22 rausgesucht:
Allerdings liefert mir
`every head row/.style={
typeset cell/.code={%%
\ifnum\pgfplotstablecol=\pgfplotstablecols%
\pgfkeyssetvalue{/pgfplots/table/column name}{##1} %
%\pgfkeyssetvalue{/pgfplots/table/@cell content}{Name: ##1\\}%
\else%
\pgfkeyssetvalue{/pgfplots/table/column name}{##1} %
%\pgfkeyssetvalue{/pgfplots/table/@cell content}{Name: ##1 &}%
\fi%
}%%
},`
immer nur den zuletzt gesetzten column name - irgendetwas fehlt....
[![alt text][3]][3]
\documentclass[border=5pt, varwidth]{standalone}
\usepackage{pgfplotstable}
\begin{document}
\pgfplotstableread[header=true]{
A B
0 0
-1 1
3 2
}\test
\pgfplotstabletypeset[string type,
every head row/.style={
typeset cell/.code={%%
\ifnum\pgfplotstablecol=\pgfplotstablecols%
\pgfkeyssetvalue{/pgfplots/table/column name}{##1} %
%\pgfkeyssetvalue{/pgfplots/table/@cell content}{Name: ##1\\}%
\else%
\pgfkeyssetvalue{/pgfplots/table/column name}{##1} %
%\pgfkeyssetvalue{/pgfplots/table/@cell content}{Name: ##1 &}%
\fi%
}%%
},
% Wofür? ====================
%assign column name/.code=\pgfkeyssetvalue{/pgfplots/table/column name}{#1 hhh},
% ========================
display columns/0/.style={
postproc cell content/.style={@cell content={##1 in Spalte:
\pgfkeysgetvalue{/pgfplots/table/column name}{\Name} \Name%
}}
},
display columns/1/.style={
postproc cell content/.style={@cell content={##1 in spalte
\pgfkeysgetvalue{/pgfplots/table/column name}{\name} \name%
}}
},
]{\test}
\end{document}
[1]: https://texwelt.de/wissen/upfiles/55555555_261.pnghttps://texwelt.de/wissen/upfiles/55555555_261.png
[2]: https://texwelt.de/wissen/upfiles/55555555_261.png
[3]: https://texwelt.de/wissen/upfiles/55555555_262.png