我们在此讨论 GNUPLOT 中数字、常数、运算子及函数。
GNUPLOT 表示数字可分成整数、实数及复数三类:
正数 : 约 4.19e-307 至 1.67e+307 零 : 0 负数 : 约 -1.67e+308 至 -4.19e-307
GNUPLOT 储存数字的原则为,若能以整数方式储存则以整数储存数字,不然以 实数方式储存,其次以复数方式储存。例如在 GNUPLOT 执行
print 1/3*3 print 1./3*3分别得到 0 和 1.0 的结果。这是因前者使用整数计算,而后者采用实数计算的 结果。执行
print 1234.567 print 12345 + 0.56789 print 1.23e300 * 2e6 print 1.23e300 * 2e8分别得到 1234.57、12345.6、2.46e+304 和 undefined value 的结果。这些例子 是受到实数的有效位数和所能表现最大数字的限制。这是我们要注意的。
GNUPLOT 所提供如 C 语言般的运算子 (operator)。 所有的运算子均可做用在整数、实数或复数上。运算子可分作 Binary Operator 和 Unary Operator,就是分别作用在两个或一个数学式子上,数学式子可为数字 或方程式。
Unary Operators Symbol Example Explanation - -a unary minus ~ ~a * one's complement ! !a * logical negation ! a! * factorial
Binary Operators Symbol Example Explanation ** a**b exponentiation * a*b multiplication / a/b division % a%b * modulo + a+b addition - a-b subtraction == a==b equality != a!=b inequality & a&b * bitwise AND ^ a^b * bitwise exclusive OR | a|b * bitwise inclusive OR && a&&b * logical AND || a||b * logical OR ?: a?b:c * ternary operation
在 GNUPLOT 中函数的参数可以是整数,实数或是复数。表3 是 GNUPLOT 所提供的函数。GNUPLOT 画条件函数的方法可由图9 中观察, 其采用类似 C 语言的语法,画出函数