
'-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와만 비교하면~ 아니다때로는 매우 큰 숫자가 있기 때문에 어떤 경우에는 작동합니다("Dim. too big").
\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}