pgfplotstable: スタイルとして特殊な値を非表示にする

pgfplotstable: スタイルとして特殊な値を非表示にする

「-1」のセルを非表示にするには、次の方法を使用します

every column/.code={
\ifnum\pgfplotstablecol>0
\pgfkeysalso{postproc cell content/.style={
@cell content={
\fpcompareTF{##1<0}{}{\pgfmathprintnumber[]{##1}}%
}
}}\fi},

今のところはうまくいっています。

しかしこれをスタイルとして設定すると

\pgfplotstableset{
HideMinusOne/.style={...seen above...}
}

これは機能しません。

何をすればいいのでしょうか?

ところで、pgfmathのみで比較するとない非常に大きな数字が時々あるため、場合によっては機能しない(「寸法が大きすぎる」)

ここに画像の説明を入力してください

\documentclass[a4paper, landscape=false]{article}
\usepackage{amsmath, amssymb, amsfonts}
\usepackage{pgfplotstable}
\pgfplotsset{compat=1.16}

\usepackage{xfp}
\ExplSyntaxOn
\NewExpandableDocumentCommand{\fpcompareTF}{mmm}
{
\fp_compare:nTF { #1 } { #2 } { #3 }
}
\ExplSyntaxOff

\begin{document}
\section{works}

\pgfplotstabletypeset[
columns/0/.style={string type}, header=false, 
col sep=comma,
%HideMinusOne, 
every column/.code={
\ifnum\pgfplotstablecol>0
\pgfkeysalso{postproc cell content/.style={
@cell content={
\fpcompareTF{##1<0}{}{\pgfmathprintnumber[]{##1}}%
}
}}\fi},
]{
a,  2, 3, -1, 5, 6,-1
b,  2, -1, 4, 5, 6, -1
c, -1, -1, -1, 5, 6, 1
}


\section{works not} 
% Hide '-1'  Style =================
\pgfplotstableset{
HideMinusOne/.style={
every column/.code={
\ifnum\pgfplotstablecol>0
\pgfkeysalso{postproc cell content/.style={
@cell content={
\fpcompareTF{##1<0}{}{\pgfmathprintnumber[]{##1}}%
}
}}\fi},
}
}

\pgfplotstabletypeset[
columns/0/.style={string type}, header=false, 
col sep=comma,
% HideMinusOne,   % <-------------------------- !!!!
]{
a,  2, 3, -1, 5, 6,-1
b,  2, -1, 4, 5, 6, -1
c,  -1, -1, -1, 5, 6, 1
}


\end{document}

関連情報