Maple调用plot绘图时提示for循环终值需为数字或字符错误如何解决
报错原因
plot函数默认会先对传入的表达式做符号求值,你直接写plot(test(x),x=1..10)时,x此时是未赋值的符号变量,传入自定义过程后for循环的终止值是符号而非数值,因此触发报错。单独调用test(19)时传入的是数值参数,所以可以正常运行。
解决方法
你可以任选以下任意一种方案修正绘图语句:
- 方案1:使用元素级运算符
~,让test仅在x取到实际数值时才执行求值plot(test~(x), x=1..10) - 方案2:直接向
plot传入自定义过程本身和取值范围,不需要书写自变量表达式,plot会自动对区间内的数值点调用过程plot(test, 1..10) - 方案3:用单引号包裹过程调用,延迟求值时机,等
x被赋值为数值后再运行过程逻辑plot('test(x)', x=1..10)
如果你需要绘制离散整数点,可以额外添加style=point参数调整样式,示例:
plot(test~(x), x=1..10, style=point, symbolsize=12)
内容的提问来源于stack exchange,提问作者Rolf
相关产品推荐
相关产品推荐

