matplotlib.figure.SubFigure.colorbar
- SubFigure.colorbar(mappable, cax=None, ax=None, use_gridspec=True, **kwargs)[source]
-
Добавляет цветовую шкалу к графику.
- Параметры:
-
- 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, который также определяет ориентацию; если значения 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', length, lengths}
-
Если задано 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.SubFigure.colorbar
© 2012–2026 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/stable/api/_as_gen/matplotlib.figure.SubFigure.colorbar.html