如何避免! Package PGF Math Error: I cannot calculate the logarithm of '0' (in ' 0>1 ? ln(0) : 0').
以下代码中的错误消息?如果可能的话,我想用一个来评估该语句\pgfmathparse{...}
。
\documentclass{article}
\usepackage{tikz}
\begin{document}
\def\var{0}
\pgfmathparse { \var>1 ? ln(\var) : \var}\pgfmathresult
\end{document}
答案1
您可以在 ln 中添加另一个保护并给出一个安全值(此处为 1),使用什么非错误值并不重要,因为它不会影响外部保护的结果
\documentclass{article}
\usepackage{tikz}
\begin{document}
\def\var{0}
\pgfmathparse { \var>1 ? ln(\var>1 ? \var:1) : \var}\pgfmathresult
\def\var{1}
\pgfmathparse { \var>1 ? ln(\var>1 ? \var:1) : \var}\pgfmathresult
\def\var{2}
\pgfmathparse { \var>1 ? ln(\var>1 ? \var:1) : \var}\pgfmathresult
\end{document}