numpy.logspace()
Функция numpy.logspace() создаёт массив чисел, равномерно распределённых в логарифмическом масштабе между двумя степенями основания. Удобно для построения частотных характеристик, шкал ЧАХ фильтров и графиков с логарифмической осью.
Сигнатура
numpy.logspace(start, stop, num=50, endpoint=True, base=10.0, dtype=None, axis=0)
Параметры
start— показатель степени начала диапазона (base ** start).stop— показатель степени конца диапазона (base ** stop).num— количество точек (по умолчанию 50).endpoint— еслиTrue, включает конечную точку.base— основание логарифма (по умолчанию 10).dtype— тип данных результата.
Возвращает
ndarray — массив из num элементов, расположенных логарифмически.
Пример 1. Базовая последовательность
import numpy as np
x = np.logspace(0, 3, num=4)
print(x)
[ 1. 10. 100. 1000.]
Получили четыре числа: 10**0, 10**1, 10**2, 10**3.
Пример 2. Без последней точки
import numpy as np
x = np.logspace(0, 3, num=3, endpoint=False)
print(x)
[ 1. 10. 100.]
Когда endpoint=False, диапазон [10**0, 10**3) делится на 3 равные части в лог-шкале.
Пример 3. Другое основание
import numpy as np
x = np.logspace(0, 4, num=5, base=2)
print(x)
[ 1. 2. 4. 8. 16.]
Основание 2 даёт степени двойки — пригодится при работе с PWM-разрядностью.
Пример 4. Частоты для теста фильтра
import numpy as np
# 10 частот от 10 Гц до 100 кГц для измерения АЧХ
freqs = np.logspace(1, 5, num=5)
print(freqs)
[1.e+01 1.e+02 1.e+03 1.e+04 1.e+05]
Пример 5. Тип данных
import numpy as np
x = np.logspace(0, 2, num=3, dtype=int)
print(x, x.dtype)
[ 1 10 100] int64
См. также
Примечание
Лицензия и источники
Техническое описание функции адаптировано из официальной документации NumPy (https://numpy.org/doc/stable/), BSD-3-Clause License. Примеры и пояснения — © AlashEd Wiki.