NumPy Tutorial NumPy Statistics NumPy References

NumPy - linspace() function



The NumPy linspace() function returns evenly spaced values over a specified interval. The values are generated in the range [start, stop] with specified number of samples. The endpoint of the interval can optionally be excluded.

Syntax

numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)

Parameters

start Required. Specify the starting value of the sequence.
stop Required. Specify the end value of the sequence, unless endpoint is False. In that case, the sequence consists of all but the last of num + 1 evenly spaced samples, so that stop is excluded. Note that the step size changes when endpoint is False.
num Optional. Specify the number of samples to generate. Default is 50. Must be non-negative.
endpoint Optional. Specify boolean value. If True, stop is the last sample. Otherwise, it is not included. Default is True.
retstep Optional. Specify boolean value. If True, return (samples, step), where step is the spacing between samples.
dtype Optional. Specify type of the output array. If dtype is not given, infer the data type from the other input arguments.

Return Value

Returns an array with elements within the specified range.

Example: creating array using linspace() function

In the example below, linspace() function is used with different parameters to create arrays.

import numpy as np

#creating 5 samples points in the given range
Arr1 = np.linspace(1,5,num=5)
print("Arr1 is:", Arr1)

#when endpoint=False, (num+1) samples are  
#generated and returns samples without last
Arr2 = np.linspace(1,5,num=5,endpoint=False)
print("Arr2 is:", Arr2)

#when retstep=True, returns (samples, step)
Arr3 = np.linspace(1,5,num=5,retstep=True)
print("Arr3 is:", Arr3)

The output of the above code will be:

Arr1 is: [1. 2. 3. 4. 5.]
Arr2 is: [1.  1.8 2.6 3.4 4.2]
Arr3 is: (array([1., 2., 3., 4., 5.]), 1.0)

Example: Visualize the sample

In the example below, arrays are created by taking endpoint parameter as True and False, and plotted using matplolib library to visualize the result.

import numpy as np
import matplotlib.pyplot as plt

#creating 10 samples points using endpoint=True
Arr1 = np.linspace(1,10,num=10,endpoint=True)

#creating 10 samples using endpoint=True
Arr2 = np.linspace(1,10,num=10,endpoint=False)

y = np.zeros(10)

#plotting Arr1 and Arr2
plt.plot(Arr1, y+0.3, 'o')
plt.plot(Arr2, y+0.6, 'o')
plt.ylim([0,1])
plt.legend(labels = ('Arr1', 'Arr2'))
plt.show()

The output of the above code will be:

Numpy linspace

❮ NumPy - Functions