NumPy 函数

NumPy linspace() 函数返回指定间隔内均匀间隔的值。这些值是在 [start, stop] 范围内以指定数量的样本生成的。可以选择排除间隔的端点。

语法

numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None) 

参数

start必填。 指定序列的起始值。
stop必填。 指定序列的结束值,除非端点为False。在这种情况下,序列由除最后一个 num + 1 个均匀间隔样本之外的所有样本组成,因此排除了 stop。请注意,当端点为 False 时,步长会发生变化。
num可选。 指定要生成的样本数量。默认值为 50。必须为非负数。
endpoint可选。 指定布尔值。如果为 True,则停止是最后一个样本。否则,不包括在内。默认值为 True。
retstep可选。 指定布尔值。如果为 True,则返回 (samples, step),其中 step 是样本之间的间距。
dtype可选。 指定输出数组的类型。如果未给出 dtype,则从其他输入参数推断数据类型。

返回值

返回一个数组,指定间隔内均匀间隔的值。

示例:使用 linspace() 函数创建数组

在下面的示例中,linspace() 函数使用不同的参数来创建

import numpy as np

#在给定范围内创建5个样本点
Arr1 = np.linspace(1,5,num=5)
print("Arr1 is:", Arr1)

#当端点=False时,(num+1)个样本是
#生成并返回没有最后一个的样本
Arr2 = np.linspace(1,5,num=5,endpoint=False)
print("Arr2 is:", Arr2)

#当retstep=True时,返回(样本,步骤)
Arr3 = np.linspace(1,5,num=5,retstep=True)
print("Arr3 is:", Arr3) 

上述代码的输出将是:

Arr1 is: [1. 2. 3. 4. 5.]
Arr2 is: [1.  1.8 2.6 3.4 4.2]
Arr3 is: (array([1., 2., 3., 4., 5.]), 1.0) 

示例:可视化示例

在下面的示例中,数组是通过将端点参数设置为 True 和 False 创建,并使用 matplolib 库绘制可视化结果。

import numpy as np
import matplotlib.pyplot as plt

#使用endpoint=True创建10个样本点
Arr1 = np.linspace(1,10,num=10,endpoint=True)

#使用端点=True创建10个样本
Arr2 = np.linspace(1,10,num=10,endpoint=False)

y = np.zeros(10)

#绘制 Arr1 和 Arr2
plt.plot(Arr1, y+0.3, 'o')
plt.plot(Arr2, y+0.6, 'o')
plt.ylim([0,1])
plt.legend(labels = ('Arr1', 'Arr2'))
plt.show() 

上述代码的输出将是:

NumPy linspace() 函数