numpy.linspace
- numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None, axis=0, *, device=None)[source]
-
Возвращает равномерно распределенные числа на заданном интервале.
Возвращает
numравномерно распределённые образцы, вычисленные на интервале [start,stop].Конечную точку интервала можно необязательно исключить.
Изменено в версии 1.16.0: Теперь поддерживаются нескалярные
startиstop.Изменено в версии 1.20.0: Значения округляются к
-inf, а не к0, когда задан целочисленныйdtype. Старое поведение всё ещё можно получить с помощьюnp.linspace(start, stop, num).astype(int).- Параметры:
-
- startarray_like
-
Начальное значение последовательности.
- stoparray_like
-
Конечное значение последовательности, если
endpointне установлено в False. В противном случае последовательность состоит из всех, кроме последнего изnum + 1равномерно распределённых образцов, так чтоstopисключается. Обратите внимание, что шаг изменяется, когдаendpointравно False. - numint, необязательно
-
Количество образцов для генерации. По умолчанию 50. Должно быть неотрицательным.
- endpointbool, необязательно
-
Если True, то
stopявляется последним образцом. В противном случае он не включается. По умолчанию True. - retstepbool, необязательно
-
Если True, возвращает (
samples,step), гдеstep— интервал между образцами. - dtypedtype, необязательно
-
Тип выходного массива. Если
dtypeне задан, тип данных определяется поstartиstop. Выведенный тип данных никогда не будет целым числом;floatвыбирается, даже если аргументы дадут массив целых чисел.Введено в версии 1.9.0.
- axisint, необязательно
-
Ось в результате для хранения образцов. Актуально только если start или stop являются массивоподобными. По умолчанию (0), образцы будут вдоль новой оси, вставленной в начало. Используйте -1, чтобы получить ось в конце.
Введено в версии 1.16.0.
- devicestr, необязательно
-
Устройство, на котором нужно разместить созданный массив. По умолчанию: None. Только для совместимости с Array-API, поэтому должен быть
"cpu", если передан.Введено в версии 2.0.0.
- Возвращает:
-
- samplesndarray
-
Существует
numравномерно распределённых образцов в замкнутом интервале[start, stop]или полуоткрытом интервале[start, stop)(в зависимости от того,endpointTrue или False). - stepfloat, необязательно
-
Возвращается только если
retstepTrueРазмер интервала между образцами.
См. также
arange-
Аналогично
linspace, но использует шаг (вместо количества образцов). geomspace-
Аналогично
linspace, но с числами, равномерно распределёнными по логарифмической шкале (геометрическая прогрессия). logspace-
Аналогично
geomspace, но с конечными точками, указанными как логарифмы. - Как создать массивы с равномерно распределёнными значениями
Примеры
>>> 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)
Графическая иллюстрация:
>>> 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()
© 2005–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/generated/numpy.linspace.html