function - Gnuplot:绘图期间出现错误“所有点y值未定义”
问题描述
我想绘制以下函数:
f(x)=250*x/(log(0.2*x)-log(log(1/10+1)))
plot f(x)
现在我得到错误:所有点 y 值未定义!
我怎么解决这个问题?
解决方案
首先,您需要编写250*x
and 0.2*x
。此外,您还陷入了 gnuplot 的“最严重的陷阱”之一:整数除法,即1/10 = 0
. 因此,最后一项将是log(log(1)) = log(0)
,这导致“所有点 y 值未定义! ”。相反,如果至少一个数字是浮点数,您将得到预期的结果:1/10. = 0.1
或1./10 = 0.1
所以,我假设你的功能是:f(x) = 250*x/(log(0.2*x)-log(log(1/10.+1)))
代码:
reset session
set samples 200
f(x) = 250*x/(log(0.2*x)-log(log(1/10.+1)))
plot f(x)
结果:(假设 f(x) 是预期的公式)
推荐阅读
- apache-spark - 如何在 PySpark 应用程序中设置纱线应用程序 ID
- javascript - 将父窗口的 css 变量应用到 iframe
- reactjs - 需要 REACT 动态路由建议 - 重定向 url
- google-apps-script - 如何在 Google Apps 脚本中构建基于时间的 if 语句
- kotlin - Kotlin 中的参数化测试使用嵌套测试类的方法源代码
- php - 根据值数组动态查找多维数组中的值并进行更改
- javascript - JavaScript 输入不允许小数
- performance - 如何比 O(N^3) 更快地优化这个 for 循环?
- reactjs - 在文本输入字段中使用设置状态挂钩时,React 认为我将值更改为未定义
- c++ - 作为类的成员函数的对话框窗口过程