Skip to main content
Documents
basicsArray CreationArray OperationsArray Computation & AnalysisLinear AlgebraRandom ProbabilityData Input/Output & Conversion

NumPy linspace()

The `numpy.linspace()` function generates an array of evenly spaced values over a specified interval. It is commonly used in numerical computations where a range of values needs to be sampled.

Usage
The `numpy.linspace()` function is employed when you need a specified number of evenly spaced samples between two numbers. It is particularly useful for creating datasets for plotting or numerical analysis.

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

In this syntax:

  • start is the starting value of the sequence.
  • stop is the end value of the sequence.
  • num specifies the number of samples to generate. If num is set to 1, a single value equal to start will be returned. If num is 0, an empty array is returned.
  • endpoint indicates whether to include the stop value.
  • retstep determines if the spacing between values should be returned.
  • dtype sets the desired data type of the output array.
  • axis specifies the axis in the result to store the samples. This allows you to insert the generated samples along a specified axis in a multi-dimensional array, rather than the default 1-dimensional output.

Examples

1. Basic Usage

import numpy as np

array = np.linspace(0, 10, num=5)

This generates an array of 5 evenly spaced values starting at 0 and ending at 10: [0. , 2.5, 5. , 7.5, 10.].

2. Excluding Endpoint

import numpy as np

array = np.linspace(0, 10, num=5, endpoint=False)

Here, the endpoint=False parameter is used, resulting in 5 values from 0 to just below 10: [0. , 2. , 4. , 6. , 8.].

3. Returning Step Size

import numpy as np

array, step = np.linspace(0, 10, num=5, retstep=True)

This example returns both the array and the step size between values, which is 2.5 in this case.

4. Using Axis Parameter

import numpy as np

array = np.linspace(0, 10, num=5, axis=1)

This creates a 2-dimensional array if combined with another dimension, placing the samples along the second axis.

5. Edge Cases for `num`

  • num=1: np.linspace(0, 10, num=1) produces [0.].
  • num=0: np.linspace(0, 10, num=0) produces [].

Tips and Best Practices

  • Specify `num` carefully. Choose a `num` value that adequately represents the range without overwhelming memory.
  • Use `endpoint=False` for open intervals. When you don't want to include the stop value, set endpoint to False.
  • Utilize `retstep=True` for step information. If the spacing between values is crucial for further computations, use retstep=True.
  • Consider data type with `dtype`. Specify dtype to control the precision of the output array, especially in large computations.
  • Performance considerations. Be mindful of memory usage and computation time when generating large arrays or when using high precision data types with dtype.