matplotlib.cm
Встроенные цветовые карты, утилиты обработки цветовых карт и миксин ScalarMappable.
См. также
Справочник по цветовым картам для списка встроенных цветовых карт.
Создание цветовых карт в Matplotlib для примеров создания цветовых карт.
Выбор цветовых карт в Matplotlib — подробное обсуждение выбора цветовых карт.
Нормализация цветовых карт для получения более подробной информации о нормализации данных.
- classmatplotlib.cm.ColormapRegistry(cmaps)[source]
-
Базируется на
MappingКонтейнер для цветовых карт, известных Matplotlib по имени.
Универсальный экземпляр реестра —
matplotlib.colormaps. Пользователям не следует создавать экземплярыColormapRegistryсамостоятельно.Чтение использует интерфейс, подобный словарю, сопоставляющий имена с
Colormap:import matplotlib as mpl cmap = mpl.colormaps['viridis']
Возвращаемые
Colormapявляются копиями, поэтому их изменение не изменяет глобальное определение цветовой карты.Дополнительные цветовые карты могут быть добавлены с помощью
ColormapRegistry.register:mpl.colormaps.register(my_colormap)
- get_cmap(cmap)[source]
-
Возвращает цветовую карту, указанную с помощью cmap.
- Parameters:
-
-
cmapstr или
Colormapили None -
- если
Colormap, вернуть ее - если строка, найти ее в
mpl.colormaps - если None, вернуть цветовую карту, определенную в
rcParams["image.cmap"](по умолчанию:'viridis')
- если
-
cmapstr или
- Returns:
-
- Цветовая карта
- register(cmap, *, name=None, force=False)[source]
-
Регистрация новой цветовой карты.
Имя цветовой карты затем можно использовать в качестве строкового аргумента любого параметра
cmapв Matplotlib. Она также доступна вpyplot.get_cmap.Реестр цветовых карт хранит копию заданной цветовой карты, так что будущие изменения исходного экземпляра цветовой карты не повлияют на зарегистрированную цветовую карту. Представьте это как получение моментального снимка цветовой карты при регистрации.
- Parameters:
-
- cmapmatplotlib.colors.Colormap
-
Регистрируемая цветовая карта.
- namestr, optional
-
Имя цветовой карты. Если не указано, используется
cmap.name. - forcebool, по умолчанию: False
-
Если False, при попытке перезаписи уже зарегистрированного имени возникает исключение ValueError. True позволяет перезаписывать зарегистрированные цветовые карты, кроме встроенных.
- unregister(name)[source]
-
Удаление цветовой карты из реестра.
Вы не можете удалить встроенные цветовые карты.
Если цветовая карта с заданным именем не зарегистрирована, возврат без ошибки, вызов, если вы пытаетесь удалить по умолчанию цветовую карту.
Предупреждение
Имена цветовых карт в настоящее время представляют собой общий пространство имен, которое может использоваться несколькими пакетами. Используйте
unregisterтолько если вы знаете, что вы зарегистрировали это имя ранее. В частности, не удаляйте его просто на всякий случай, чтобы очистить имя перед регистрацией новой цветовой карты.- Parameters:
-
- namestr
-
Имя удаляемой цветовой карты.
- Raises:
-
- ValueError
-
Если вы пытаетесь удалить встроенную цветовую карту по умолчанию.
- classmatplotlib.cm.ScalarMappable(norm=None, cmap=None)[source]
-
Bases:
objectКласс-микшин для сопоставления скалярных данных с RGBA.
Класс ScalarMappable применяет нормализацию данных перед возвратом RGBA-цветов из заданной цветовой карты.
- Параметры:
-
-
norm
Normalize(или подкласс) или str или None -
Объект нормализации, который масштабирует данные, обычно в интервал
[0, 1]. Если строка, то подклассNormalizeгенерируется динамически на основе масштаба с соответствующим именем. Если None, norm по умолчанию устанавливается как объект colors.Normalize, который инициализирует масштабирование на основе первых обработанных данных. -
cmapstr или
Colormap -
Цветовая карта, используемая для сопоставления нормализованных значений данных с RGBA-цветами.
-
norm
- autoscale()[source]
-
Автоматическое масштабирование пределов скаляров в экземпляре norm с использованием текущего массива
- autoscale_None()[source]
-
Автоматическое масштабирование пределов скаляров в экземпляре norm с использованием текущего массива, изменяя только пределы, которые равны None
- changed()[source]
-
Вызывайте этот метод всякий раз, когда mappable изменяется, чтобы уведомить всех слушателей сигнала 'changed'.
- colorbar
-
Последняя цветовая шкала, связанная с этим ScalarMappable. Может быть None.
- get_alpha()[source]
-
- Возвращает:
-
- float
-
Всегда возвращает 1.
- get_array()[source]
-
Возвращает массив значений, которые сопоставляются с цветами.
Базовый класс
ScalarMappableне делает никаких предположений о размерности и форме массива.
- get_clim()[source]
-
Возвращает значения (min, max), которые сопоставляются с пределами цветовой карты.
- get_cmap()[source]
-
Возвращает экземпляр
Colormap.
- propertynorm
- set_array(A)[source]
-
Устанавливает массив значений из массивоподобного A.
- Параметры:
-
- Aмассивоподобный тип или None
-
Значения, которые сопоставляются с цветами.
Базовый класс
ScalarMappableне делает никаких предположений о размерности и форме массива значений A.
- set_clim(vmin=None, vmax=None)[source]
-
Устанавливает пределы нормализации для масштабирования изображения.
- Параметры:
-
- vmin, vmaxfloat
-
Пределы.
Пределы также можно передать как кортеж (vmin, vmax) в качестве единственного позиционного аргумента.
- set_cmap(cmap)[source]
-
Устанавливает цветовую карту для данных яркости.
- Параметры:
-
-
cmap
Colormapили str или None
-
cmap
- set_norm(norm)[source]
-
Устанавливает экземпляр нормализации.
- Параметры:
-
-
norm
Normalizeили str или None
-
norm
Примечания
Если какие-либо цветовые шкалы используют mappable для этой нормализации, установка norm mappable сбросит norm, locator и форматирование на цветовой шкале до значений по умолчанию.
- to_rgba(x, alpha=None, bytes=False, norm=True)[source]
-
Возвращает нормализованный массив rgba, соответствующий x.
В обычном случае x представляет собой одномерную или двумерную последовательность скаляров, и соответствующий
ndarrayмассив значений rgba будет возвращён на основе нормы и цветовой карты, заданных для этого объекта ScalarMappable.Существует один особый случай для обработки изображений, которые уже являются rgb или rgba, например, загруженных из файла изображения. Если x является
ndarrayс 3 измерениями, и последнее измерение равно 3 или 4, то оно будет интерпретироваться как массив rgb или rgba, и никакого отображения не будет выполнено. Массив может быть uint8 или иметь тип с плавающей точкой с значениями в диапазоне от 0 до 1; в противном случае будет выброшено исключение ValueError. Если это массив с пропусками, маска будет проигнорирована. Если последнее измерение равно 3, параметр alpha (по умолчанию 1) будет использован для заполнения прозрачности. Если последнее измерение равно 4, параметр alpha игнорируется; он не заменяет уже имеющийся альфа-канал. ValueError будет выброшен, если третье измерение не равно 3 или 4.В любом случае, если bytes равно False (по умолчанию), массив rgba будет содержать числа с плавающей точкой в диапазоне от 0 до 1; если оно равно True, возвращаемый массив rgba будет содержать значения uint8 в диапазоне от 0 до 255.
Если norm равно False, нормализация входных данных не выполняется, и предполагается, что они находятся в диапазоне (0-1).
- matplotlib.cm.get_cmap(name=None, lut=None)[source]
-
[Устаревшее] Получить экземпляр цветовой карты, по умолчанию используя значения из rc параметров, если name равно None.
- Параметры:
-
-
name
Colormapили str или None, по умолчанию: None -
Если это экземпляр
Colormap, он будет возвращён. В противном случае, имя цветовой карты, известной Matplotlib, которая будет пересэмплирована с помощью lut. По умолчанию, None, означаетrcParams["image.cmap"](по умолчанию:'viridis'). - lutint или None, по умолчанию: None
-
Если name не является экземпляром Colormap и lut не равно None, цветовая карта будет пересэмплирована, чтобы иметь lut записей в таблице поиска.
-
name
- Возвращает:
-
- Colormap
Примечания
Устарело начиная с версии 3.7: Используйте
matplotlib.colormaps[name]илиmatplotlib.colormaps.get_cmap(obj)вместо этого.
- matplotlib.cm.register_cmap(name=None, cmap=None, *, override_builtin=False)[source]
-
[Устаревшее] Добавить цветовую карту в набор, распознаваемый
get_cmap().Регистрация новой цветовой карты для доступа по имени
LinearSegmentedColormap('swirly', data, lut) register_cmap(cmap=swirly_cmap)- Параметры:
-
- namestr, необязательно
-
Имя, которое может использоваться в
get_cmap()илиrcParams["image.cmap"](по умолчанию:'viridis')Если отсутствует, имя будет равно
nameатрибуту cmap. - cmapmatplotlib.colors.Colormap
-
Несмотря на то, что это второй аргумент и имеет значение по умолчанию, это обязательный аргумент.
- override_builtinbool
-
Разрешить переопределение встроенных цветовых карт пользователем.
Пожалуйста, не используйте это, если не уверены, что вам это нужно.
Примечания
Устарело начиная с версии 3.7: Используйте
matplotlib.colormaps.register(name)вместо этого.
- matplotlib.cm.unregister_cmap(name)[source]
-
[Устаревшее] Удалить цветовую карту, распознаваемую
get_cmap().Вы не можете удалить встроенные цветовые карты.
Если цветовой карты с указанным именем не зарегистрировано, функция вернётся без ошибки. Возникает исключение, если вы попытаетесь отменить регистрацию стандартной цветовой карты.
Предупреждение
Имена цветовых карт в настоящее время представляют собой общий пространство имён, которое может использоваться несколькими пакетами. Используйте
unregister_cmapтолько если вы знаете, что вы ранее зарегистрировали это имя. В частности, не отменяйте регистрацию просто так, чтобы очистить имя перед регистрацией новой цветовой карты.- Параметры:
-
- namestr
-
Имя цветовой карты, которую нужно удалить из регистрации
- Возвращает:
-
- ColorMap или None
-
Если цветовая карта была зарегистрирована, возвращается она, в противном случае возвращается
None
- Исключения:
-
- ValueError
-
Если вы попытаетесь отменить регистрацию стандартной встроенной цветовой карты.
Примечания
Устарело начиная с версии 3.7: Используйте
matplotlib.colormaps.unregister(name)вместо этого.
© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.7.5/api/cm_api.html