我对 TeX 还不熟悉,所以如果我的方法完全错误,并且有更好的方法,请告诉我。我已经使用 tikz 包在我的文档中绘制了一些图表和视觉效果,所以我选择在这里使用 pgf。
我需要计算并将一些数字呈现为百分比,因此我将以下内容放在一起,输出我想要的内容:
\documentclass{article}
\usepackage{tikz}
\newcommand\CurrentMeasureValue{0.7127625}
\newcommand\PercentValue{}
\begin{document}
\pgfmathparse{100*\CurrentMeasureValue}
\pgfmathprintnumberto[precision=2]{\pgfmathresult}{\PercentValue}
\PercentValue\%
\end{document}
其输出为71.28%
。
但是,我需要多次使用它,所以我尝试将它变成一个宏,但是当我这样做时,我想要的输出前面会出现一个等号。
\documentclass{article}
\usepackage{tikz}
\newcommand\CurrentMeasureValue{0.7127625}
\newcommand\PercentValue{}
\newcommand\PercentTwoDecimal[1]{%
\pgfmathparse{100*#1}%
\pgfmathprintnumberto[precision=2]{\pgfmathresult}{\renewcommand\PercentValue}\%%
}
\begin{document}
\PercentTwoDecimal{\CurrentMeasureValue}
\end{document}
输出结果为=71.28%
。我将输出用作图表上的标签,因此我不想使用等号。我做错了什么,该如何解决?TIA。
答案1
该\renewcommand
命令不能包含在 的定义中\PercentTwoDecimal
,且\PercentValue
在 之前输入\%
。
\documentclass{article}
\usepackage{tikz}
\newcommand\CurrentMeasureValue{0.7127625}
\newcommand\PercentValue{}
\newcommand\PercentTwoDecimal[1]{%
\pgfmathparse{100*#1}%
\pgfmathprintnumberto[precision=2]{\pgfmathresult}{\PercentValue} % Removed the \renewcommand
\PercentValue\%} % Inserted \PercentValue before \%
\begin{document}
\PercentTwoDecimal{\CurrentMeasureValue}
\end{document}