我正在尝试使用matplotlib.pyplot文件想画一个像字符串一样的函数
我的代码是:
import matplotlib.pyplot as mpl
import numpy as np
def plot2D(*args):
mpl.grid(1)
xAxis = np.arange(args[1],args[2],args[3])
def xfunction(x,input):
return eval(input)
print(xfunction(5,args[0]))
mpl.plot(xAxis,xfunction(xAxis,args[0]))
mpl.show()
plot2D("1/(x)",-1,2,0.1)
我希望它绘制函数1/x,但它看起来像this,而它应该像this(desmos)。我是不是把字符串转换成了一个错误的函数,或者matplotlib甚至可以用来绘制这样的函数,或者我应该使用另一个库?我该怎么画一个像x**2+y**2=1这样的函数呢?或者像sin(x!)这样的函数?你知道吗
函数
1/x
有一个内在的问题:它没有在0中定义。现在,在您的代码中,不幸的是,范围内的一个值是0,因此它会把整个事情搞砸。您所要做的就是更改最后一行代码以稍微移动范围,并增加步数以获得更准确的结果:plot2D("1/x",-1.01,2,0.02)
。这是绘图: 如果你想消除中间那条讨厌的线,你就必须修改代码,把图形一分为二。你知道吗相关问题 更多 >
编程相关推荐