numpy.linspace#
- numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None, axis=0, *, device=None)[source]#
返回在指定区间内均匀分布的数字。
返回 num 个均匀分布的样本,计算范围为区间 [start, stop]。
区间的终点可以选择性地不包括在内。
版本 1.20.0 中的更改: 当指定整数
dtype
时,值会向-inf
而不是0
取整。旧行为仍然可以通过np.linspace(start, stop, num).astype(int)
获得。- 参数:
- start类数组
序列的起始值。
- stop类数组
序列的结束值,除非 endpoint 设置为 False。在这种情况下,序列包含
num + 1
个均匀分布样本中除了最后一个之外的所有样本,因此 stop 被排除。请注意,当 endpoint 为 False 时,步长会改变。- num整型,可选
要生成的样本数。默认值为 50。必须是非负数。
- endpoint布尔型,可选
如果为 True,stop 是最后一个样本。否则,它不包括在内。默认值为 True。
- retstep布尔型,可选
如果为 True,则返回 (samples, step),其中 step 是样本之间的间距。
- dtype数据类型,可选
输出数组的类型。如果未给出
dtype
,则数据类型从 start 和 stop 推断。推断出的 dtype 绝不会是整数;即使参数会生成整数数组,也会选择 float。- axis整型,可选
结果中用于存储样本的轴。仅当 start 或 stop 为类数组时相关。默认情况下 (0),样本将沿着在开头插入的新轴。使用 -1 可在末尾获取一个轴。
- device字符串,可选
放置所创建数组的设备。默认值:None。仅用于数组 API 互操作性,因此如果传入则必须为
"cpu"
。2.0.0 版本新增。
- 返回:
- samplesndarray
在闭区间
[start, stop]
或半开区间[start, stop)
中有 num 个等间隔的样本(取决于 endpoint 是 True 还是 False)。- step浮点型,可选
仅当 retstep 为 True 时返回。
样本之间的间距大小。
另请参阅
示例
>>> import numpy as np >>> np.linspace(2.0, 3.0, num=5) array([2. , 2.25, 2.5 , 2.75, 3. ]) >>> np.linspace(2.0, 3.0, num=5, endpoint=False) array([2. , 2.2, 2.4, 2.6, 2.8]) >>> np.linspace(2.0, 3.0, num=5, retstep=True) (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') [<matplotlib.lines.Line2D object at 0x...>] >>> plt.plot(x2, y + 0.5, 'o') [<matplotlib.lines.Line2D object at 0x...>] >>> plt.ylim([-0.5, 1]) (-0.5, 1) >>> plt.show()