pgfplots-siunitx: Удаление десятичных нулей \pgfmathsetmacro при печати \SI

pgfplots-siunitx: Удаление десятичных нулей \pgfmathsetmacro при печати \SI

Здесь я использовал \sisetup{round-mode=off,add-decimal-zero=false,round-precision=0}подавление десятичных нулей. Однако я не смог заменить 100их 100.0так, как мне нужно.

\documentclass[border=1cm]{standalone}
\usepackage{pgfplots,siunitx}
\sisetup{round-mode=off,add-decimal-zero=false,round-precision=0}
\pgfplotsset{compat=1.14}

\pgfmathsetmacro{\t}{2*50}

\begin{document}
    \begin{tikzpicture}
    \begin{axis}
    \addplot[mark=*] coordinates {(0,1)} node[pin=150:{%
        $\SI{\t}{\us}$%
    }]{} ;
    \end{axis}
    \end{tikzpicture}
\end{document}

введите описание изображения здесь

решение1

Если вы проверите \tздесь, вы получите

> \t=macro:
->100.0.

так что siunitxделает именно то, что вы ожидаете, без округления,и т. д., активный: сохранение значения как есть. Вам нужно будет удалить конечный ноль либо в конце pgf, либо, возможно, округлив до нуля:

\sisetup{round-mode=places,round-precision=0}

Связанный контент