numpy.linspace
-
用例:
numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None) -
功能:
在指定区间内返回均匀间隔的数字。
返回区间[start, stop]范围内num个均匀间隔的样本。
可以选择是否包含区间的结束位置点。 -
参数:
变量名 | 数据类型 | 功能 |
---|---|---|
start | 标量 | 序列起始位置的值 |
stop | 标量 | 当endpoint=True时,代表序列结束位置的值。当endpoint=False时,序列会从[start, stop-1]范围内均匀间隔采集num个样本。注意:当endpoint=False时,采集的间隔会发生改变 |
num | 整数,可选参数 | 产生的样本数量。默认是50。该值必须非负 |
endpoint | bool变量,可选参数 | 如果为True,stop是最后一个值。否则,stop不被包含在序列内。默认是True |
retstep | bool变量,可选参数 | 如果为True,返回(samples, step),其中step是样本之间的采样间隔 |
dtype | dtype变量,可选参数 | 返回数组的数值类型,如果不给定dtype ,从其他输入参数推断数据类型,这个是numpy 1.9.0版本的新特性 |
- 返回值:
变量名 | 数据类型 | 功能 |
---|---|---|
samples | n维数组 | 由闭区间[start, stop] 或半闭区间[start, stop) 内num个等间隔样本组成。(取决于endpoint是Tru或者False) |
step | 浮点型数字,可选参数 | 当retstep为True时才会返回此参数,代表样本之间的采样间隔 |
- 示例:
import numpy as np
print('第一个输出为:{}'.format(np.linspace(2.0, 3.0, num=5)))
print('第二个输出为:{}'.format(np.linspace(2.0, 3.0, num=5, endpoint=False)))
print('第三个输出为:{}'.format(np.linspace(2.0, 3.0, num=5, retstep=True)))
第一个输出为:[2. 2.25 2.5 2.75 3. ]
第二个输出为:[2. 2.2 2.4 2.6 2.8]
第三个输出为:(array([2. , 2.25, 2.5 , 2.75, 3. ]), 0.25)
可视化分析
import matplotlib.pyplot as plt
N = 8
y = np.zeros(N)
x1 = np.linspace(0, 10, N, endpoint=True)
x2 = np.linspace(0, 10, N, endpoint=False)
plt.plot(x1, y, 'o')
plt.plot(x2, y + 0.5, 'o')
plt.ylim([-0.5, 1])
plt.show()