matplotlib.figure.Figure.colorbar
- Figure.colorbar(mappable, cax=None, ax=None, use_gridspec=True, **kwargs)[исходный код]
-
Добавляет цветовую шкалу к графику.
- Параметры:
-
- mappable
-
Объект
matplotlib.cm.ScalarMappable(например,AxesImage,ContourSetи т. д.), описываемый этой цветовой шкалой. Этот аргумент обязателен для методаFigure.colorbar, но необязателен для функцииpyplot.colorbar, которая по умолчанию использует текущее изображение.Обратите внимание, что объект
ScalarMappableможно создать «на лету», чтобы сгенерировать цветовую шкалу, не связанную с ранее нарисованным графическим объектом, например:fig.colorbar(cm.ScalarMappable(norm=norm, cmap=cmap), ax=ax)
-
cax
Axes, необязательно -
Область Axes, в которой будет нарисована цветовая шкала. Если задано
None, создаётся новая область Axes, а необходимое для неё место выделяется за счёт области (областей) Axes, указанных в ax. -
ax
Axes, итерируемый объект илиnumpy.ndarrayиз объектов Axes, необязательно -
Одна или несколько родительских областей Axes, за счёт которых будет выделено место для новой области Axes цветовой шкалы. Этот параметр используется только в том случае, если cax не задан.
По умолчанию используется область Axes, содержащая объект mappable, применённый для создания цветовой шкалы.
- use_gridspecbool, необязательно
-
Если cax имеет значение
None, новая область cax создаётся как экземпляр Axes. Если для ax задано положение с помощью subplotspec и use_gridspec имеет значениеTrue, положение cax также задаётся с помощью subplotspec.
- Возвращает:
-
-
colorbar
Colorbar
-
colorbar
- Другие параметры:
-
- locationNone или {'left', 'right', 'top', 'bottom'}
-
Расположение области Axes цветовой шкалы относительно родительской области Axes. Оно также определяет ориентацию цветовой шкалы (цветовые шкалы слева и справа располагаются вертикально, а сверху и снизу — горизонтально). Если значение равно None, расположение определяется параметром orientation, если он задан (вертикальные цветовые шкалы располагаются справа, горизонтальные — снизу); если orientation не задан, используется значение 'right'.
- orientationNone или {'vertical', 'horizontal'}
-
Ориентация цветовой шкалы. Предпочтительно задавать параметр location, поскольку он также определяет orientation; передача несовместимых значений для location и orientation приводит к исключению.
- fractionfloat, по умолчанию: 0.15
-
Доля исходной области Axes, отводимая под цветовую шкалу.
- shrinkfloat, по умолчанию: 1.0
-
Коэффициент изменения размера цветовой шкалы.
- aspectfloat, по умолчанию: 20
-
Отношение длинной стороны к короткой.
- padfloat, по умолчанию: 0.05 для вертикальной, 0.15 для горизонтальной
-
Доля исходной области Axes, задающая расстояние между цветовой шкалой и новой областью Axes изображения.
- anchor(float, float), необязательно
-
Точка привязки области Axes цветовой шкалы. По умолчанию — (0.0, 0.5) для вертикальной шкалы и (0.5, 1.0) для горизонтальной.
- panchor(float, float) или False, необязательно
-
Точка привязки родительской области Axes цветовой шкалы. Если задано False, точка привязки родительской области Axes не изменяется. По умолчанию — (1.0, 0.5) для вертикальной шкалы и (0.5, 0.0) для горизонтальной.
- extend{'neither', 'both', 'min', 'max'}
-
Добавляет заострённые окончания для значений вне диапазона (кроме случая 'neither'). Они задаются для конкретной цветовой карты с помощью методов set_under и set_over.
- extendfrac{None, 'auto', длина, длины}
-
Если задано None, оба треугольных окончания цветовой шкалы — для минимального и максимального значений — будут иметь длину, равную 5% длины внутренней части цветовой шкалы (значение по умолчанию).
Если задано 'auto', длина треугольных окончаний цветовой шкалы будет совпадать с длиной внутренних сегментов (если для spacing задано значение 'uniform') или с длиной соответствующих соседних внутренних сегментов (если для spacing задано значение 'proportional').
Если задано скалярное значение, оно указывает длину обоих треугольных окончаний цветовой шкалы — для минимального и максимального значений — как долю длины внутренней части цветовой шкалы. Также можно передать последовательность из двух долей, задающих длины окончаний для минимального и максимального значений соответственно как доли длины внутренней части цветовой шкалы.
- extendrectbool
-
Если задано False, окончания цветовой шкалы для минимального и максимального значений будут треугольными (по умолчанию). Если задано True, окончания будут прямоугольными.
- ticksNone, список делений или Locator
-
Если задано None, деления определяются автоматически на основе входных данных.
- formatNone, str или Formatter
-
Если задано None, используется
ScalarFormatter. Поддерживаются строки форматирования, например"%4.2e"или"{x:.2e}". Вместо этого можно передать альтернативныйFormatter. - drawedgesbool
-
Определяет, следует ли рисовать линии на границах цветов.
- labelstr
-
Подпись вдоль длинной стороны цветовой шкалы.
- boundaries, valuesNone или последовательность
-
Если параметры не заданы, цветовая карта отображается в диапазоне 0–1. Если переданы последовательности, длина values должна быть на единицу меньше длины boundaries. Для каждой области, ограниченной соседними элементами boundaries, используется цвет, соответствующий значению в values. Размер каждой области определяется параметром spacing. Обычно это полезно только для индексированных цветов (т. е.
norm=NoNorm()) или в других особых случаях. - spacing{'uniform', 'proportional'}
-
Для дискретных цветовых шкал (
BoundaryNormили контурных графиков) значение 'uniform' выделяет каждому цвету одинаковое пространство, а 'proportional' задаёт пространство пропорционально интервалу данных.
Примечания
Если mappable является объектом
ContourSet, его аргумент extend автоматически включается.Аргумент shrink позволяет просто масштабировать цветовую шкалу относительно области Axes. Обратите внимание: если задан cax, он определяет размер цветовой шкалы, а параметры shrink и aspect игнорируются.
Для более точного управления можно вручную задать положения объектов Axes, в которых будут нарисованы объект mappable и цветовая шкала. В этом случае не используйте аргументы, задающие свойства Axes.
Известно, что некоторые средства просмотра векторной графики (svg и pdf) отображают белые промежутки между сегментами цветовой шкалы. Это связано с ошибками в средствах просмотра, а не в Matplotlib. В качестве обходного решения цветовую шкалу можно отобразить с перекрывающимися сегментами:
cbar = colorbar() cbar.solids.set_edgecolor("face") draw()Однако это может привести к нежелательным последствиям в других случаях, например при работе с полупрозрачными изображениями (alpha < 1) и окончаниями цветовой шкалы; поэтому это обходное решение не используется по умолчанию (см. issue #1188).
Примеры использования matplotlib.figure.Figure.colorbar
Управление положением и размером цветовой шкалы с помощью вставных областей Axes
Контурный график неравномерно распределённых данных
Сопоставление свойств маркеров с многомерными данными
Построение нескольких линий с помощью LineCollection
© 2012–2026 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/stable/api/_as_gen/matplotlib.figure.Figure.colorbar.html