numpy.linspace#
- numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None, axis=0, *, device=None)[源代码]#
返回在指定间隔内均匀间隔的数字.
返回 num 个均匀间隔的样本,计算范围为 [ start , stop ].
可以选择排除间隔的端点.
在 1.20.0 版本发生变更: 当指定整数
dtype时,值会向-inf而不是0舍入.旧的行为仍然可以通过np.linspace(start, stop, num).astype(int)获得- 参数:
- startarray_like
序列的起始值.
- stoparray_like
序列的结束值,除非 endpoint 设置为 False. 在这种情况下,序列包含
num + 1个均匀间隔的样本,但最后一个样本除外,因此 stop 被排除在外. 请注意,当 endpoint 为 False 时,步长会发生变化.- numint, optional
要生成的样本数. 默认为 50.必须是非负数.
- endpointbool,可选
如果为 True,则 stop 是最后一个样本. 否则,不包括在内. 默认为 True.
- retstepbool,可选
如果为 True,则返回 ( samples , step ),其中 step 是样本之间的间距.
- dtypedtype,可选
输出数组的类型.如果未给出
dtype,则数据类型从 start 和 stop 推断.推断的 dtype 永远不会是整数;即使参数会生成整数数组,也会选择 float .- 轴int, optional
在结果中存储样本的轴.仅当 start 或 stop 类似数组时才相关.默认情况下 (0),样本将沿着在开头插入的新轴排列.使用 -1 可在末尾获得一个轴.
- devicestr, optional
在其上放置创建的数组的设备.默认值:None.仅用于 Array-API 互操作性,因此如果传递则必须为
"cpu".在 2.0.0 版本加入.
- 返回:
- samplesndarray
在闭区间
[start, stop]或半开区间[start, stop)中有 num 个等间距的样本 (具体取决于 endpoint 是 True 还是 False).- stepfloat, optional
仅当 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()