numpy.linspace()

Функция numpy.linspace() возвращает заданное число равномерно распределённых точек на отрезке [start, stop]. В отличие от arange, здесь задаётся количество точек, а не шаг.

Сигнатура

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

Параметры

  • start — начало отрезка.

  • stop — конец отрезка.

  • num — число точек (по умолчанию 50).

  • endpoint — включать ли stop (по умолчанию True).

  • retstep — если True, возвращает кортеж (array, step).

  • dtype — тип результата.

Возвращаемое значение

ndarray с num равноудалёнными значениями. Если retstep=True — кортеж (samples, step).

Примеры

Пример 1. 5 точек от 0 до 10.

import numpy as np

print(np.linspace(0, 10, 5))
[ 0.   2.5  5.   7.5 10. ]

Пример 2. Без включения конца.

print(np.linspace(0, 1, 5, endpoint=False))
[0.  0.2 0.4 0.6 0.8]

Пример 3. С возвращением шага.

vals, step = np.linspace(0, 1, 11, retstep=True)
print("step =", step)
print(vals)
step = 0.1
[0.  0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1. ]

Пример 4. Точки для построения графика синуса.

t = np.linspace(0, 2 * np.pi, 9)
print(np.sin(t).round(3))
[ 0.     0.707  1.     0.707  0.    -0.707 -1.    -0.707 -0.   ]

Пример 5. Калибровочные точки ШИМ-сигнала.

# 11 равномерных уровней ШИМ от 0% до 100%
duty = np.linspace(0, 255, 11, dtype=int)
print(duty)
[  0  25  51  76 102 127 153 178 204 229 255]

См. также

Примечание

Лицензия и источники

Техническое описание функции адаптировано из официальной документации NumPy (https://numpy.org/doc/stable/), BSD-3-Clause License. Примеры и пояснения — © AlashEd Wiki.