为什么这会导致空白?

时间:2018-12-07 17:29:03

标签: python numpy matplotlib

我想知道为什么这个python代码:

import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
x = np.arange(-3,3,100)
y = -(np.arctan(-1/x))
plt.ylim((-1.5,1.5))
plt.plot(x,y)
plt.show()

绘制一个空图,轴具有我想要的极限。 Wolfram Alpha向我保证,该功能应该在这些限制内可见。 我在这里完全迷路了。

1 个答案:

答案 0 :(得分:1)

您的范围仅包含一个点x = [-3],因此您不会绘制太多内容。 您要使用的是创建线性空间

x = np.linspace(-3,3,100)

然后您的功能将可见。

编辑:第一句话的解释:

np.arange(start, stop, step)

这将创建一个范围,范围从start开始,在stop(不包括)处停止,并逐步增加step。因此,您从-3开始,下一个值必须是跨步-3 + 100 = 97,但这不能小于3。因此,范围仅包含起始编号。

np.linspace(start, stop, number)将在[start,stop]个分区中以等距number划分的间隔中创建一个范围。