Spec-Zone.ru › Matplotlib 3.4

matplotlib.colors.LightSource

класс matplotlib.colors.LightSource(azdeg=315, altdeg=45, hsv_min_val=0, hsv_max_val=1, hsv_min_sat=1, hsv_max_sat=0)[source]

Базы: object

Создаёт источник света, исходящий из указанного азимута и возвышения. Углы задаются в градусах, азимут измеряется по часовой стрелке от севера, возвышение — вверх от нулевой плоскости поверхности.

shade используется для создания «затенённых» значений rgb для массива данных. shade_rgb может быть использован для комбинирования rgb-изображения с картой высот. hillshade генерирует карту освещённости поверхности.

Укажите азимут (измеряется по часовой стрелке от юга) и высоту (измеряется вверх от плоскости поверхности) источника света в градусах.

Параметры:
azdegfloat, по умолчанию: 315 градусов (с северо-запада)

Азимут (0-360, градусы по часовой стрелке от севера) источника света.

altdegfloat, по умолчанию: 45 градусов

Высота (0-90, градусы вверх от горизонтали) источника света.

Примечания

Для обратной совместимости, параметры hsv_min_val, hsv_max_val, hsv_min_sat и hsv_max_sat могут быть указаны при инициализации. Однако эти параметры будут использованы только если «blend_mode='hsv'» передано в shade или shade_rgb. Смотрите документацию для blend_hsv для получения более подробной информации.

__dict__ = mappingproxy({'__module__': 'matplotlib.colors', '__doc__': '\n Создаёт источник света, исходящий из указанного азимута и возвышения.\n Углы задаются в градусах, азимут измеряется\n по часовой стрелке от севера, возвышение — вверх от нулевой плоскости поверхности.\n\n `shade` используется для создания «затенённых» значений rgb для массива данных.\n `shade_rgb` может быть использован для комбинирования rgb-изображения с картой высот.\n `hillshade` генерирует карту освещённости поверхности.\n ', '__init__': <function LightSource.__init__>, 'direction': <property object>, 'hillshade': <function LightSource.hillshade>, 'shade_normals': <function LightSource.shade_normals>, 'shade': <function LightSource.shade>, 'shade_rgb': <function LightSource.shade_rgb>, 'blend_hsv': <function LightSource.blend_hsv>, 'blend_soft_light': <function LightSource.blend_soft_light>, 'blend_overlay': <function LightSource.blend_overlay>, '__dict__': <attribute '__dict__' of 'LightSource' objects>, '__weakref__': <attribute '__weakref__' of 'LightSource' objects>, '__annotations__': {}})
__init__(azdeg=315, altdeg=45, hsv_min_val=0, hsv_max_val=1, hsv_min_sat=1, hsv_max_sat=0)[source]

Укажите азимут (измеряется по часовой стрелке от юга) и высоту (измеряется вверх от плоскости поверхности) источника света в градусах.

Параметры:
azdegfloat, по умолчанию: 315 градусов (с северо-запада)

Азимут (0-360, градусы по часовой стрелке от севера) источника света.

altdegfloat, по умолчанию: 45 градусов

Высота (0-90, градусы вверх от горизонтали) источника света.

Примечания

Для обратной совместимости, параметры hsv_min_val, hsv_max_val, hsv_min_sat и hsv_max_sat могут быть указаны при инициализации. Однако эти параметры будут использованы только если «blend_mode='hsv'» передано в shade или shade_rgb. Смотрите документацию для blend_hsv для получения более подробной информации.

__module__ = 'matplotlib.colors'
__weakref__

список слабых ссылок на объект (если определён)

blend_hsv(rgb, intensity, hsv_max_sat=None, hsv_max_val=None, hsv_min_val=None, hsv_min_sat=None)[source]

Принимает массив входных данных, преобразует в значения HSV в заданной цветовой карте, затем корректирует эти значения цвета, чтобы создать впечатление карты рельефа с затенением, используя указанный источник света. Возвращаются значения RGBA, которые затем могут быть использованы для построения затенённого изображения с помощью imshow.

Цвет результирующего изображения будет затемнён путём перемещения значений (s, v) (в цветовом пространстве hsv) к (hsv_min_sat, hsv_min_val) в затенённых областях или осветлён путём сдвига (s, v) к (hsv_max_sat, hsv_max_val) в освещённых областях. По умолчанию крайние значения выбраны так, что полностью затенённые точки почти чёрные (s = 1, v = 0), а полностью освещённые точки почти белые (s = 0, v = 1).

Параметры:
rgbndarray

Массив MxNx3 RGB из чисел с плавающей точкой, значения которых лежат в диапазоне от 0 до 1 (цветное изображение).

intensityndarray

Массив MxNx1 из чисел с плавающей точкой, значения которых лежат в диапазоне от 0 до 1 (серое изображение).

hsv_max_satчисло, по умолчанию: 1

Максимальное значение насыщенности, до которого карта intensity может сдвинуть выходное изображение.

hsv_min_satчисло, необязательно

Минимальное значение насыщенности, до которого карта intensity может сдвинуть выходное изображение. По умолчанию 0.

hsv_max_valчисло, необязательно

Максимальное значение «v» (в «hsv»), до которого карта intensity может сдвинуть выходное изображение. По умолчанию 1.

hsv_min_valчисло, необязательно

Минимальное значение «v» (в «hsv»), до которого карта intensity может сдвинуть выходное изображение. По умолчанию 0.

Возвращает:
ndarray

Массив MxNx3 RGB, представляющий объединённые изображения.

blend_overlay(rgb, intensity)[source]

Комбинирует rgb-изображение с картой интенсивности, используя смешивание «overlay».

Параметры:
rgbndarray

Массив MxNx3 RGB из чисел с плавающей точкой, значения которых лежат в диапазоне от 0 до 1 (цветное изображение).

intensityndarray

Массив MxNx1 из чисел с плавающей точкой, значения которых лежат в диапазоне от 0 до 1 (серое изображение).

Возвращает:
ndarray

Массив MxNx3 RGB, представляющий объединённые изображения.

END_OF_DOCUMENT_MARKER
blend_soft_light(rgb, intensity)[source]

Комбинирует изображение rgb с картой интенсивности с помощью смешивания "мягкий свет", используя формулу "пегтоп".

Параметры:
rgbndarray

RGB-массив MxNx3 с плавающей точкой, значения которого лежат в диапазоне от 0 до 1 (цветное изображение).

intensityndarray

Массив MxNx1 с плавающей точкой, значения которого лежат в диапазоне от 0 до 1 (изображение в градациях серого).

Возвращает:
ndarray

RGB-массив MxNx3, представляющий объединенные изображения.

property direction

Вектор направления, указывающий на источник света.

hillshade(elevation, vert_exag=1, dx=1, dy=1, fraction=1.0)[source]

Вычисляет интенсивность освещения поверхности, используя заданные азимут и высоту источника света.

Вычисляет нормальные векторы поверхности и передает их в shade_normals.

Параметры:
elevation2D array-like

Значения высоты, используемые для генерации карты освещения.

vert_exagчисло, необязательно

Коэффициент увеличения высот при вычислении освещения. Может использоваться для учета различий в единицах измерения между системами координат x-y и высотой (например, десятичные градусы против метров) или для усиления/ослабления топографических эффектов.

dxчисло, необязательно

Шаг по оси x (столбцы) входной сетки elevation.

dyчисло, необязательно

Шаг по оси y (строки) входной сетки elevation.

fractionчисло, необязательно

Увеличивает или уменьшает контраст карты освещения. Значения больше единицы приведут к тому, что промежуточные значения будут приближаться к полному освещению или тени (и обрезанию любых значений, которые выйдут за пределы 0 или 1). Обратите внимание, что это не визуально или математически то же самое, что и вертикальное преувеличение.

Возвращает:
ndarray

2D-массив значений освещения от 0 до 1, где 0 соответствует полной тени, а 1 — полному освещению.

shade(data, cmap, norm=None, blend_mode='overlay', vmin=None, vmax=None, vert_exag=1, dx=1, dy=1, fraction=1, **kwargs)[source]

Комбинирует значения данных с цветовой картой со значениями интенсивности освещения (т. е. "карта освещения") значений.

Параметры:
data2D array-like

Значения высоты, используемые для генерации карты с тенями.

cmapColormap

Цветовая карта, используемая для окраски массива data. Обратите внимание, что это должен быть экземпляр Colormap. Например, вместо передачи cmap='gist_earth', используйте cmap=plt.get_cmap('gist_earth').

normNormalize instance, optional

Нормализация, используемая для масштабирования значений перед применением цветовой карты. Если None, входные данные будут линейно масштабированы между своим минимумом и максимумом.

blend_mode{'hsv', 'overlay', 'soft'} или вызываемая функция, необязательно

Тип смешивания, используемый для объединения значений данных с цветовой картой с интенсивностью освещения. По умолчанию "overlay". Обратите внимание, что для большинства топографических поверхностей "overlay" или "soft" выглядят более реалистично с визуальной точки зрения. Если передается определенная пользователем функция, ожидается, что она будет объединять MxNx3 RGB-массив с плавающей точкой (в диапазоне от 0 до 1) с MxNx1 массивом освещения (также от 0 до 1). (Подпись вызова функции func(rgb, illum, **kwargs)) Дополнительные аргументы kwargs, передаваемые в эту функцию, будут переданы функции blend_mode.

vminчисло с плавающей точкой или None, необязательно

Минимальное значение, используемое при применении цветовой карты к data. Если None, используется минимальное значение в data. Если norm задан, этот аргумент будет проигнорирован.

vmaxчисло с плавающей точкой или None, необязательно

Максимальное значение, используемое при применении цветовой карты к data. Если None, используется максимальное значение в data. Если norm задан, этот аргумент будет проигнорирован.

vert_exagчисло, необязательно

Коэффициент увеличения высот при вычислении освещения. Может использоваться для учета различий в единицах измерения между системами координат x-y и высотой (например, десятичные градусы против метров) или для усиления/ослабления топографических эффектов.

dxчисло, необязательно

Шаг по оси x (столбцы) входной сетки elevation.

dyчисло, необязательно

Шаг по оси y (строки) входной сетки elevation.

fractionчисло, необязательно

Увеличивает или уменьшает контраст карты освещения. Значения больше единицы приведут к тому, что промежуточные значения будут приближаться к полному освещению или тени (и обрезанию любых значений, которые выйдут за пределы 0 или 1). Обратите внимание, что это не визуально или математически то же самое, что и вертикальное преувеличение.

Дополнительные kwargs передаются функции *blend_mode*.
Возвращает:
ndarray

MxNx4-массив чисел с плавающей точкой в диапазоне от 0 до 1.

shade_normals(normals, fraction=1.0)[source]

Вычисляет интенсивность освещения для нормальных векторов поверхности, используя заданные азимут и высоту источника света.

Представьте себе искусственное солнце, расположенное в бесконечности, под определенным азимутом и высотой, освещающее нашу поверхность. Части поверхности, которые наклонены к солнцу, должны светлеть, а части, обращенные в противоположную сторону, — темнеть.

Параметры:
fractionчисло, необязательно

Увеличивает или уменьшает контраст карты освещения. Значения больше единицы приведут к тому, что промежуточные значения будут приближаться к полному освещению или тени (и обрезанию любых значений, которые выйдут за пределы 0 или 1). Обратите внимание, что это не визуально или математически то же самое, что и вертикальное преувеличение.

Возвращает:
ndarray

2D-массив значений освещения от 0 до 1, где 0 соответствует полной тени, а 1 — полному освещению.

END_OF_DOCUMENT_MARKER
shade_rgb(rgb, elevation, fraction=1.0, blend_mode='hsv', vert_exag=1, dx=1, dy=1, **kwargs)[source]

Используйте этот источник света, чтобы настроить цвета входного массива rgb, чтобы создать впечатление карты с затенённым рельефом с заданной elevation.

Параметры:
rgbarray-like

Массив RGB (M, N, 3), предполагается, что значения находятся в диапазоне от 0 до 1.

elevationarray-like

Массив (M, N) значений высоты, используемых для создания карты с затенённым рельефом.

fractionчисло

Увеличивает или уменьшает контраст затенённого рельефа. Значения, большие единицы, приведут к тому, что промежуточные значения приблизятся к полному освещению или тени (и обрезанию любых значений, которые выйдут за пределы 0 или 1). Обратите внимание, что это не визуально и не математически то же самое, что и вертикальное преувеличение.

blend_mode{'hsv', 'overlay', 'soft'} или вызываемая функция, необязательно

Тип смешивания, используемый для объединения значений цветовой карты с интенсивностью освещения. Для обратной совместимости по умолчанию используется "hsv". Обратите внимание, что для большинства топографических поверхностей "overlay" или "soft" выглядят более реалистичными с визуальной точки зрения. Если предоставлена пользовательская функция, ожидается, что она объединит массив RGB MxNx3 с плавающей точкой (диапазон 0 до 1) с массивом затенённого рельефа MxNx1 (также от 0 до 1). (Подпись вызова функции func(rgb, illum, **kwargs)) Дополнительные значения kwargs, переданные в эту функцию, будут переданы функции blend_mode.

vert_exagчисло, необязательно

Величина преувеличения значений высоты при вычислении освещения. Это можно использовать для компенсации различий в единицах между системой координат x-y и системой координат высоты (например, десятичные градусы против метров) или для преувеличения или уменьшения выраженности рельефа.

dxчисло, необязательно

Интервал по оси x (столбцы) входной сетки elevation.

dyчисло, необязательно

Интервал по оси y (строки) входной сетки elevation.

Дополнительные kwargs передаются функции *blend_mode*.
Возвращаемое значение:
ndarray

Массив (m, n, 3) с плавающей точкой, значения которого лежат в диапазоне от 0 до 1.

Примеры использования matplotlib.colors.LightSource

Shading example

Пример затенения

Shaded & power normalized rendering

Затенённое и нормализованное по мощности отображение

Frontpage 3D example

Пример 3D из главной страницы

AGG filter

Фильтр AGG

Custom hillshading in a 3D surface plot

Пользовательское затенение в 3D-поверхностном графике

Hillshading

Затенение

Topographic hillshading

Топографическое затенение

© 2012–2021 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.4.3/api/_as_gen/matplotlib.colors.LightSource.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API