numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)
在指定的間隔内傳回均勻間隔的數字。
傳回num均勻分布的樣本,在[start, stop]。
這個區間的端點可以任意的被排除在外。
Parameters(參數): | start : scalar(标量) The starting value of the sequence(序列的起始點).stop : scalar 序列的結束點,除非endpoint被設定為False,在這種情況下, the sequence consists of all but the last of num + 1 evenly spaced samples(該序列包括所有除了最後的num+1上均勻分布的樣本(感覺這樣翻譯有點坑)), 以緻于stop被排除.當endpoint is False的時候注意步長的大小(下面有例子).num : int, optional(可選) 生成的樣本數,預設是50。必須是非負。endpoint : bool, optional 如果是真,則一定包括stop,如果為False,一定不會有stopretstep : bool, optional If True, return (samples, step), where step is the spacing between samples.(看例子)dtype : dtype, optional
|
---|---|
Returns: | samples : ndarray There are num equally spaced samples in the closed interval [start, stop] or the half-open interval [start, stop) (depending on whether endpoint is True or False).step : float(隻有當retstep設定為真的時候才會存在)
|
官網的例子
Examples
>>>
>>> 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)
Graphical illustration:
>>>
>>> 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()