matplotlib.cm
Встроенные цветовые карты, утилиты для работы с цветовыми картами и примесь ScalarMappable.
См. также
Справочник по цветовым картам — список встроенных цветовых карт.
Создание цветовых карт в Matplotlib — примеры создания цветовых карт.
Выбор цветовых карт в Matplotlib — подробное обсуждение выбора цветовых карт.
Нормализация цветовых карт — дополнительные сведения о нормализации данных.
- classmatplotlib.cm.ColormapRegistry(cmaps)[исходный код]
-
Базовые классы:
MappingКонтейнер цветовых карт, известных Matplotlib по имени.
Экземпляр универсального реестра —
matplotlib.colormaps. Пользователям не должно требоваться самостоятельно создавать экземплярыColormapRegistry.Для чтения используется интерфейс, подобный словарю, который сопоставляет имена с объектами
Colormap:import matplotlib as mpl cmap = mpl.colormaps['viridis']
Возвращаемые объекты
Colormapявляются копиями, поэтому их изменение не меняет глобальное определение цветовой карты.Дополнительные цветовые карты можно добавлять с помощью
ColormapRegistry.register:mpl.colormaps.register(my_colormap)
Чтобы получить список всех зарегистрированных цветовых карт, выполните:
from matplotlib import colormaps list(colormaps)
- get_cmap(cmap)[исходный код]
-
Возвращает цветовую карту, заданную через cmap.
- Параметры:
-
-
cmapstr,
Colormapили None -
- если это
Colormap, возвращает его - если это строка, ищет её в
mpl.colormaps - если это None, возвращает цветовую карту, заданную в
rcParams["image.cmap"](по умолчанию:'viridis')
- если это
-
cmapstr,
- Возвращает:
-
- Colormap
- register(cmap, *, name=None, force=False)[исходный код]
-
Регистрирует новую цветовую карту.
После этого имя цветовой карты можно использовать как строковый аргумент для любого параметра
cmapв Matplotlib. Она также доступна вpyplot.get_cmap.Реестр цветовых карт сохраняет копию переданной цветовой карты, поэтому последующие изменения исходного экземпляра не влияют на зарегистрированную цветовую карту. Можно считать, что при регистрации реестр сохраняет снимок цветовой карты.
- Параметры:
-
- cmapmatplotlib.colors.Colormap
-
Цветовая карта для регистрации.
- namestr, необязательный
-
Имя цветовой карты. Если не задано, используется
cmap.name. - forcebool, по умолчанию: False
-
Если False, при попытке перезаписать уже зарегистрированное имя вызывается ValueError. Значение True позволяет перезаписывать зарегистрированные цветовые карты, кроме встроенных.
- unregister(name)[исходный код]
-
Удаляет цветовую карту из реестра.
Встроенные цветовые карты удалить нельзя.
Если цветовая карта с указанным именем не зарегистрирована, метод завершается без ошибки; ошибка возникает при попытке отменить регистрацию цветовой карты по умолчанию.
Предупреждение
В настоящее время имена цветовых карт находятся в общем пространстве имён, которое могут использовать разные пакеты. Используйте
unregister, только если вы уверены, что ранее зарегистрировали это имя. В частности, не отменяйте регистрацию «на всякий случай», чтобы освободить имя перед регистрацией новой цветовой карты.- Параметры:
-
- namestr
-
Имя удаляемой цветовой карты.
- Вызывает исключения:
-
- ValueError
-
Если предпринимается попытка удалить встроенную цветовую карту по умолчанию.
- matplotlib.cm.get_cmap(name=None, lut=None)[исходный код]
-
[Устарело] Получает экземпляр цветовой карты; если name равно None, используются значения rc по умолчанию.
- Параметры:
-
-
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()илиpyplot.get_cmap().
- classmatplotlib.cm.ScalarMappable(colorizer, **kwargs)[исходный код]
-
- autoscale(self)[исходный код]
-
Автоматически задаёт диапазон скалярных значений в экземпляре norm, используя текущий массив.
- autoscale_None(self)[исходный код]
-
Автоматически задаёт диапазон скалярных значений в экземпляре norm, используя текущий массив; изменяются только границы со значением None.
- changed(self)[исходный код]
-
Вызывайте этот метод при каждом изменении объекта отображения, чтобы уведомить всех слушателей callbackSM о сигнале 'changed'.
- colorbar
-
Последняя цветовая шкала, связанная с этим ScalarMappable. Может иметь значение None.
- get_alpha(self)[исходный код]
- get_array(self)[исходный код]
-
Возвращает массив значений, сопоставленных с цветами.
Базовый класс
ScalarMappableне делает предположений о размерности и форме массива.
- get_clim(self)[исходный код]
-
Возвращает значения (min, max), сопоставленные с границами цветовой карты.
- get_cmap(self)[исходный код]
-
Возвращает экземпляр
Colormap.
- propertynorm
- set_array(self, A)[исходный код]
-
Задаёт массив значений из объекта A, подобного массиву.
- Параметры:
-
- Aобъект, подобный массиву, или None
-
Значения, сопоставляемые с цветами.
Базовый класс
ScalarMappableне делает предположений о размерности и форме массива значений A.
- set_clim(self, vmin=None, vmax=None)[исходный код]
-
Задаёт границы нормализации для масштабирования изображения.
- Параметры:
-
- vmin, vmaxfloat
-
Границы.
Для скалярных данных границы также можно передать одним позиционным аргументом в виде кортежа (vmin, vmax).
- set_cmap(self, cmap)[исходный код]
-
Задаёт цветовую карту для данных о яркости.
- Параметры:
-
-
cmap
Colormap, str или None
-
cmap
- set_norm(self, norm)[исходный код]
-
Задаёт экземпляр нормализации.
- Параметры:
-
-
norm
Normalize, str или None
-
norm
Примечания
Если с этим объектом отображения связаны цветовые шкалы, использующие эту нормализацию, при задании нормализации объекту отображения для цветовой шкалы будут сброшены нормализация, локатор и форматировщики, и им будут назначены значения по умолчанию.
- to_rgba(self, x, alpha=None, bytes=False, norm=True)[исходный код]
-
Возвращает нормализованный массив RGBA, соответствующий x.
В обычном случае x — это одномерная или двумерная последовательность скалярных значений. На основе нормализации и цветовой карты, заданных для этого Colorizer, будет возвращён соответствующий
ndarrayзначений RGBA.Есть особый случай обработки изображений, которые уже представлены в формате RGB или RGBA, например, если они были прочитаны из файла изображения. Если x — это
ndarrayс тремя измерениями, а последнее измерение равно 3 или 4, он будет обработан как массив RGB или RGBA, и сопоставление выполняться не будет. Массив может содержать значения типаuint8или числа с плавающей точкой в диапазоне 0–1; в противном случае будет вызвано ValueError. Значения NaN и замаскированные элементы получат альфа-канал 0. Если последнее измерение равно 3, прозрачность будет заполнена значением аргумента alpha (по умолчанию 1). Если последнее измерение равно 4, аргумент alpha игнорируется: он не заменяет уже заданное значение альфа-канала. Если третье измерение не равно 3 или 4, будет вызвано ValueError.В обоих случаях, если bytes равно False (по умолчанию), массив RGBA будет содержать числа с плавающей точкой в диапазоне 0–1; если значение равно True, возвращаемый массив RGBA будет содержать значения типа
uint8в диапазоне от 0 до 255.Если norm равно False, нормализация входных данных не выполняется; предполагается, что они находятся в диапазоне (0–1).
© 2012–2026 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/stable/api/cm_api.html