numpy.logspace #
- 麻木的。logspace (开始,停止, num = 50 ,端点= True ,基数= 10.0 , dtype = None , axis = 0 ) [来源] #
返回在对数刻度上均匀分布的数字。
在线性空间中,序列从 (以start的幂为底) 开始,以 ( 参见下面的端点)结束。
base ** start
base ** stop
版本 1.16.0 中进行了更改:现在支持非标量启动和停止。
版本 1.25.0 中更改:现在支持非标量 'base'
- 参数:
- 开始类似数组
base ** start
是序列的起始值。- 停止类似数组
base ** stop
是序列的最终值,除非端点 为 False。在这种情况下,值在日志空间的间隔内间隔开,其中除了最后一个(长度为num的序列)之外的所有值都会被返回。num + 1
- num整数,可选
要生成的样本数。默认值为 50。
- 端点布尔值,可选
如果为 true,则 stop是最后一个样本。否则,不包括在内。默认为 True。
- 类似基本数组,可选
日志空间的基础。(或)中的元素之间的步长 是均匀的。默认值为 10.0。
ln(samples) / ln(base)
log_base(samples)
- 数据类型数据类型
输出数组的类型。如果未给出,则从start和stop
dtype
推断数据类型。推断的类型永远不会是整数;即使参数会生成整数数组,也会选择float 。- 轴int,可选
结果中用于存储样本的轴。仅当 start、stop 或 base 类似于数组时才相关。默认情况下 (0),样本将沿着在开头插入的新轴。使用 -1 在末端获取轴。
1.16.0 版本中的新增内容。
- 返回:
- 样本ndarray
num个样本,在对数刻度上等距分布。
也可以看看
arange
与 linspace 类似,指定步长而不是样本数。请注意,当与浮动端点一起使用时,可以包含也可以不包含该端点。
linspace
与对数空间类似,但样本均匀分布在线性空间中,而不是对数空间中。
geomspace
与日志空间类似,但直接指定端点。
- 如何创建具有规则间隔值的数组
笔记
如果 base 是标量,则 logspace 相当于代码
>>> y = np.linspace(start, stop, num=num, endpoint=endpoint) ... >>> power(base, y).astype(dtype) ...
例子
>>> np.logspace(2.0, 3.0, num=4) array([ 100. , 215.443469 , 464.15888336, 1000. ]) >>> np.logspace(2.0, 3.0, num=4, endpoint=False) array([100. , 177.827941 , 316.22776602, 562.34132519]) >>> np.logspace(2.0, 3.0, num=4, base=2.0) array([4. , 5.0396842 , 6.34960421, 8. ]) >>> np.logspace(2.0, 3.0, num=4, base=[2.0, 3.0], axis=-1) array([[ 4. , 5.0396842 , 6.34960421, 8. ], [ 9. , 12.98024613, 18.72075441, 27. ]])
图解说明:
>>> import matplotlib.pyplot as plt >>> N = 10 >>> x1 = np.logspace(0.1, 1, N, endpoint=True) >>> x2 = np.logspace(0.1, 1, N, endpoint=False) >>> y = np.zeros(N) >>> 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()