numpy.
logspace
返回以对数刻度均匀分布的数字。
在线性空间中,序列从 base ** start (base 的力量 start 结束 base ** stop (见 endpoint 下面)。
base ** start
base ** stop
在 1.16.0 版更改: 非标量 start 和 stop 现在支持。
base ** start 是序列的起始值。
base ** stop 是序列的最终值,除非 endpoint 是假的。在那种情况下, num + 1 数值以对数空间间隔,除最后一个(长度序列)以外 num )返回。
num + 1
要生成的样本数。默认值为50。
如果是真的, stop 是最后一个样本。否则不包括在内。默认值为true。
日志空间的基础。中元素之间的步长 ln(samples) / ln(base) (或) log_base(samples) )是均匀的。默认值为10.0。
ln(samples) / ln(base)
log_base(samples)
输出数组的类型。如果 dtype 则数据类型是从 start 和 stop . 推断的类型永远不会是整数; float 即使参数将产生整数数组,也会选择。
dtype
float
结果中用于存储样本的轴。仅当开始或停止类似于数组时才相关。默认情况下(0),采样将沿着在开始处插入的新轴。使用-1在末尾获得一个轴。
1.16.0 新版功能.
num 样本,在对数刻度上等距分布。
参见
arange
类似于linspace,指定了步进大小而不是样本数。请注意,当与浮点端点一起使用时,端点可能包含在内,也可能不包含在内。
linspace
与对数空间相似,但样本均匀分布在线性空间,而不是对数空间。
geomspace
类似于日志空间,但直接指定端点。
笔记
日志空间等于代码
>>> 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. ])
图示:
>>> 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()