matplotlib.table
Рисование таблиц.
Примечание
Реализация таблиц в Matplotlib поддерживается лишь в ограниченной степени. Если вам нужна более функциональная реализация таблиц, попробуйте blume.
Используйте фабричную функцию table, чтобы создать готовую таблицу из текстовых данных. Если вам нужен больший контроль, используйте класс Table и его методы.
Таблица состоит из сетки ячеек, индексируемых парой (строка, столбец). Ячейка (0, 0) расположена в верхнем левом углу.
Благодарим John Gill за предоставление класса и таблицы.
- classmatplotlib.table.Cell(xy, width, height, *, edgecolor='k', facecolor='w', fill=True, text='', loc='right', fontproperties=None, visible_edges='closed')[исходный код]
-
Базовый класс:
RectangleЯчейка — это
Rectangleс соответствующимText.Скорее всего, вам не придётся создавать ячейки самостоятельно. Вместо этого используйте либо фабричную функцию
table, либоTable.add_cell.- Параметры:
-
- xy2-элементный кортеж
-
Положение нижнего левого угла ячейки.
- widthfloat
-
Ширина ячейки.
- heightfloat
-
Высота ячейки.
- edgecolorцвет, по умолчанию: 'k'
-
Цвет границы ячейки.
- facecolorцвет, по умолчанию: 'w'
-
Цвет заливки ячейки.
- fillbool, по умолчанию: True
-
Определяет, будет ли залит фон ячейки.
- textstr, необязательно
-
Текст ячейки.
- loc{'right', 'center', 'left'}
-
Выравнивание текста внутри ячейки.
- fontpropertiesdict, необязательно
-
Словарь, задающий свойства шрифта текста. Поддерживаемые ключи и значения соответствуют именованным аргументам, принимаемым
FontProperties. - visible_edges{'closed', 'open', 'horizontal', 'vertical'} или подстрока 'BRTL'
-
Границы ячейки, которые нужно нарисовать линией: подстрока 'BRTL' (нижняя, правая, верхняя, левая) или одно из значений 'open' (не рисовать границы), 'closed' (рисовать все границы), 'horizontal' (нижняя и верхняя), 'vertical' (правая и левая).
- PAD=0.1
-
Отступ между текстом и прямоугольником.
- auto_set_font_size(renderer)[исходный код]
-
Уменьшает размер шрифта до тех пор, пока текст не поместится по ширине ячейки.
- draw(renderer)[исходный код]
-
Рисует Artist (и его дочерние элементы) с помощью заданного средства визуализации.
Ничего не делает, если объект Artist невидим (
Artist.get_visibleвозвращает False).- Параметры:
-
-
rendererподкласс
RendererBase.
-
rendererподкласс
Примечания
Этот метод переопределён в подклассах Artist.
- get_fontsize()[исходный код]
-
Возвращает размер шрифта ячейки.
- get_path()[исходный код]
-
Возвращает
Pathдляvisible_edges.
- get_required_width(renderer)[исходный код]
-
Возвращает минимально необходимую ширину ячейки.
- get_text()[исходный код]
-
Возвращает экземпляр
Textячейки.
- get_text_bounds(renderer)[исходный код]
-
Возвращает границы текста в виде (x, y, width, height) в координатах таблицы.
- set(*, agg_filter=<UNSET>, alpha=<UNSET>, angle=<UNSET>, animated=<UNSET>, antialiased=<UNSET>, bounds=<UNSET>, capstyle=<UNSET>, clip_box=<UNSET>, clip_on=<UNSET>, clip_path=<UNSET>, color=<UNSET>, edgecolor=<UNSET>, facecolor=<UNSET>, fill=<UNSET>, fontsize=<UNSET>, gid=<UNSET>, hatch=<UNSET>, hatch_linewidth=<UNSET>, height=<UNSET>, in_layout=<UNSET>, joinstyle=<UNSET>, label=<UNSET>, linestyle=<UNSET>, linewidth=<UNSET>, mouseover=<UNSET>, path_effects=<UNSET>, picker=<UNSET>, rasterized=<UNSET>, sketch_params=<UNSET>, snap=<UNSET>, text_props=<UNSET>, transform=<UNSET>, url=<UNSET>, visible=<UNSET>, width=<UNSET>, x=<UNSET>, xy=<UNSET>, y=<UNSET>, zorder=<UNSET>)[исходный код]
-
Задаёт несколько свойств одновременно.
Поддерживаемые свойства:
Свойство
Описание
функция фильтра, принимающая массив чисел с плавающей точкой размером (m, n, 3) и значение dpi и возвращающая массив размером (m, n, 3) и два смещения от нижнего левого угла изображения
float или None
неизвестно
bool
antialiasedилиaabool или None
(left, bottom, width, height)
CapStyleили {'butt', 'projecting', 'round'}BboxBaseили Nonebool
Patch или (Path, Transform) или None
цвет или None
цвет или None
неизвестно
bool
неизвестно
str
{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}
неизвестно
неизвестно
bool
JoinStyleили {'miter', 'round', 'bevel'}object
{'-', '--', '-.', ':', '', (offset, on-off-seq), ...}
float или None
bool
список объектов
AbstractPathEffectNone, bool, float или вызываемый объект
bool
(scale: float, length: float, randomness: float)
bool или None
неизвестно
неизвестно
str
bool
неизвестно
неизвестно
(float, float)
неизвестно
float
- set_figure(fig)[исходный код]
-
Задаёт экземпляр
FigureилиSubFigure, к которому относится объект Artist.- Параметры:
-
-
fig
FigureилиSubFigure
-
fig
- set_fontsize(size)[исходный код]
-
Задаёт размер шрифта текста.
- set_text_props(**kwargs)[исходный код]
-
Обновить свойства текста.
Допустимые именованные аргументы:
Свойство
Описание
функция фильтра, принимающая массив чисел с плавающей точкой размером (m, n, 3) и значение dpi, а возвращающая массив размером (m, n, 3) и два смещения от нижнего левого угла изображения
float or None
bool
bool
словарь со свойствами для
patches.FancyBboxPatchнеизвестно
неизвестно
неизвестно
fontfamilyилиfamilyилиfontname{FONTNAME, 'serif', 'sans-serif', 'cursive', 'fantasy', 'monospace'}
fontpropertiesилиfontилиfont_propertiesfloat или {'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'}
fontstretchилиstretch{числовое значение в диапазоне 0–1000, 'ultra-condensed', 'extra-condensed', 'condensed', 'semi-condensed', 'normal', 'semi-expanded', 'expanded', 'extra-expanded', 'ultra-expanded'}
{'normal', 'italic', 'oblique'}
fontvariantилиvariant{'normal', 'small-caps'}
fontweightилиweight{числовое значение в диапазоне 0–1000, 'ultralight', 'light', 'normal', 'regular', 'book', 'medium', 'roman', 'semibold', 'demibold', 'demi', 'bold', 'heavy', 'extra bold', 'black'}
str
{'left', 'center', 'right'}
bool
object
float (кратное размера шрифта)
str
bool
multialignmentилиma{'left', 'right', 'center'}
bool
список объектов
AbstractPathEffectNone или bool, или float, или вызываемый объект
(float, float)
bool
float или {'vertical', 'horizontal'}
{None, 'default', 'anchor'}
(scale: float, length: float, randomness: float)
bool или None
object
bool
str
bool, по умолчанию:
rcParams["text.usetex"](по умолчанию:False)verticalalignmentилиva{'baseline', 'bottom', 'center', 'center_baseline', 'top'}
bool
bool
float
float
float
- set_transform(t)[исходный код]
-
Задать преобразование художника.
- Параметры:
-
-
t
Transform
-
t
- propertyvisible_edges
-
Границы ячейки, которые следует нарисовать линией.
При чтении этого свойства возвращается подстрока 'BRTL' (bottom, right, top, left').
При задании этого свойства можно использовать подстроку 'BRTL' или одно из значений {'open', 'closed', 'horizontal', 'vertical'}.
- matplotlib.table.CustomCell[исходный код]
-
псевдоним для
Cell
- classmatplotlib.table.Table(ax, loc=None, bbox=None, **kwargs)[исходный код]
-
Базовые классы:
ArtistТаблица ячеек.
Таблица состоит из сетки ячеек, индексируемых парой (строка, столбец).
Простая таблица представляет собой полную сетку ячеек с индексами от (0, 0) до (num_rows-1, num_cols-1), в которой ячейка (0, 0) расположена в левом верхнем углу. Однако можно также добавлять ячейки с отрицательными индексами. Не обязательно добавлять ячейку в каждую позицию сетки, поэтому можно создавать таблицы с пропусками.
Примечание: Обычно пустую таблицу не создают с нуля. Вместо этого используйте
table, чтобы создать таблицу из данных.- Параметры:
-
-
ax
Axes -
Axes, в который следует поместить таблицу. - locstr, необязательный
-
Положение ячейки относительно ax. Значение должно быть одним из
codes. -
bbox
Bboxили [xmin, ymin, width, height], необязательный -
Ограничивающая рамка, в которой следует нарисовать таблицу. Если значение не равно None, этот параметр переопределяет loc.
-
ax
- Другие параметры:
-
- **kwargs
-
Свойства
Artist.
- AXESPAD=0.02
-
Отступ между Axes и краем таблицы в единицах Axes.
- FONTSIZE=10
- add_cell(row, col, *args, **kwargs)[исходный код]
-
Создать ячейку и добавить её в таблицу.
- Параметры:
-
- rowint
-
Индекс строки.
- colint
-
Индекс столбца.
- *args, **kwargs
-
Все остальные параметры передаются в
Cell.
- Возвращает:
-
Cell-
Созданная ячейка.
- auto_set_column_width(col)[исходный код]
-
Автоматически задать ширину указанных столбцов оптимальным образом.
- Параметры:
-
- colint или последовательность int
-
Индексы столбцов, для которых нужно автоматически подобрать масштаб.
- auto_set_font_size(value=True)[исходный код]
-
Автоматически задать размер шрифта.
- codes={'best': 0, 'bottom': 17, 'bottom left': 12, 'bottom right': 13, 'center': 9, 'center left': 5, 'center right': 6, 'left': 15, 'lower center': 7, 'lower left': 3, 'lower right': 4, 'right': 14, 'top': 16, 'top left': 11, 'top right': 10, 'upper center': 8, 'upper left': 2, 'upper right': 1}
-
Допустимые положения таблицы относительно Axes.
- contains(mouseevent)[исходный код]
-
Проверить, содержит ли объект Artist событие мыши.
- Параметры:
-
-
mouseevent
MouseEvent
-
mouseevent
- Возвращает:
-
- containsbool
-
Указывает, находятся ли какие-либо значения в пределах радиуса.
- detailsdict
-
Словарь сведений о контексте события, специфичный для объекта Artist, например о том, какие точки находятся в радиусе выбора. Подробности см. в описании соответствующих подклассов Artist.
- draw(renderer)[исходный код]
-
Нарисовать объект Artist (и его дочерние объекты) с помощью указанного рендерера.
Метод ничего не делает, если объект Artist невидим (
Artist.get_visibleвозвращает False).- Параметры:
-
-
rendererподкласс
RendererBase.
-
rendererподкласс
Примечания
Этот метод переопределяется в подклассах Artist.
- propertyedges
-
Значение по умолчанию для
visible_edgesвновь добавляемых ячеек с помощьюadd_cell.Примечания
В настоящее время этот параметр влияет только на новые ячейки, созданные с помощью
add_cell.Чтобы изменить существующие ячейки, нужно явно задать их границы:
for c in tab.get_celld().values(): c.visible_edges = 'horizontal'
- get_celld()[исходный код]
-
Вернуть словарь ячеек таблицы, сопоставляющий (строку, столбец) с объектами
Cell.Примечания
Для доступа к отдельным ячейкам можно также обращаться к объекту Table напрямую по индексу:
cell = table[row, col]
- get_children()[исходный код]
-
Вернуть объекты Artist, содержащиеся в таблице.
- get_window_extent(renderer=None)[исходный код]
-
Получить ограничивающую рамку объекта Artist в координатах отображения.
Ширина и высота ограничивающей рамки неотрицательны.
Для включения в расчёт «tight» ограничивающей рамки подклассам следует переопределить этот метод. По умолчанию возвращается пустая ограничивающая рамка в точке 0, 0.
Будьте осторожны при использовании этой функции: результаты не обновятся, если изменится область окна объекта Artist. Область может измениться из-за любых изменений в стеке преобразований, например при изменении пределов Axes, размера фигуры или используемого холста (как это происходит при сохранении фигуры). Это может привести к неожиданному поведению: интерактивная фигура будет выглядеть правильно на экране, но сохранится неправильно.
- scale(xscale, yscale)[исходный код]
-
Масштабировать ширину столбцов на xscale, а высоту строк — на yscale.
- set(*, agg_filter=<UNSET>, alpha=<UNSET>, animated=<UNSET>, clip_box=<UNSET>, clip_on=<UNSET>, clip_path=<UNSET>, fontsize=<UNSET>, gid=<UNSET>, in_layout=<UNSET>, label=<UNSET>, mouseover=<UNSET>, path_effects=<UNSET>, picker=<UNSET>, rasterized=<UNSET>, sketch_params=<UNSET>, snap=<UNSET>, transform=<UNSET>, url=<UNSET>, visible=<UNSET>, zorder=<UNSET>)[исходный код]
-
Задать несколько свойств одновременно.
Поддерживаются следующие свойства:
Свойство
Описание
функция фильтрации, принимающая массив чисел с плавающей точкой размерности (m, n, 3) и значение dpi и возвращающая массив размерности (m, n, 3) и два смещения относительно левого нижнего угла изображения
float или None
bool
BboxBaseили Nonebool
Patch или (Path, Transform) или None
float
str
bool
object
bool
список объектов
AbstractPathEffectNone, bool, float или вызываемый объект
bool
(scale: float, length: float, randomness: float)
bool или None
str
bool
float
- set_fontsize(size)[исходный код]
-
Задать размер шрифта текста ячеек в пунктах.
- Параметры:
-
- sizefloat
Примечания
Пока автоматический подбор размера шрифта не отключён, значение будет ограничено так, чтобы текст помещался в ячейке по горизонтали.
Это поведение можно отключить с помощью
auto_set_font_size.>>> the_table.auto_set_font_size(False) >>> the_table.set_fontsize(20)
Однако автоматического увеличения высоты строки нет, поэтому текст может выходить за границы ячейки.
- matplotlib.table.table(ax, cellText=None, cellColours=None, cellLoc='right', colWidths=None, rowLabels=None, rowColours=None, rowLoc='left', colLabels=None, colColours=None, colLoc='center', loc='bottom', bbox=None, edges='closed', **kwargs)[исходный код]
-
Добавляет таблицу в
Axes.Необходимо указать хотя бы один из параметров cellText или cellColours. Эти параметры должны представлять собой двумерные списки: внешние списки задают строки, а внутренние — значения столбцов в каждой строке. В каждой строке должно быть одинаковое количество элементов.
Таблица может дополнительно содержать заголовки строк и столбцов, которые настраиваются соответственно с помощью параметров rowLabels, rowColours, rowLoc и colLabels, colColours, colLoc.
Для более точной настройки таблиц используйте класс
Tableи добавьте его к объекту Axes с помощьюAxes.add_table.- Параметры:
-
- cellText2D list of str or pandas.DataFrame, optional
-
Тексты, размещаемые в ячейках таблицы.
Примечание: Переводы строк в строках в настоящее время не учитываются, поэтому текст будет выходить за границы ячеек.
- cellColours2D list of color, optional
-
Цвета фона ячеек.
- cellLoc{'right', 'center', 'left'}
-
Выравнивание текста в ячейках.
- colWidthslist of float, optional
-
Ширина столбцов в единицах измерения осей. Если значение не задано, ширина всех столбцов будет равна 1 / ncols.
- rowLabelslist of str, optional
-
Текст заголовочных ячеек строк.
- rowColourslist of color, optional
-
Цвета заголовочных ячеек строк.
- rowLoc{'left', 'center', 'right'}
-
Выравнивание текста в заголовочных ячейках строк.
- colLabelslist of str, optional
-
Текст заголовочных ячеек столбцов.
- colColourslist of color, optional
-
Цвета заголовочных ячеек столбцов.
- colLoc{'center', 'left', 'right'}
-
Выравнивание текста в заголовочных ячейках столбцов.
- locstr, default: 'bottom'
-
Положение ячейки относительно ax. Значение должно быть одним из
codes. -
bbox
Bboxor [xmin, ymin, width, height], optional -
Ограничивающая рамка, в которой будет нарисована таблица. Если задано значение, отличное от None, оно переопределяет loc.
- edges{'closed', 'open', 'horizontal', 'vertical'} or substring of 'BRTL'
-
Границы ячеек, которые следует нарисовать линией. См. также
visible_edges.
- Возвращает:
-
Table-
Созданная таблица.
- Другие параметры:
-
- **kwargs
-
Свойства
Table.Свойство
Описание
функция фильтрации, принимающая массив чисел с плавающей запятой формы (m, n, 3) и значение dpi и возвращающая массив формы (m, n, 3) и два смещения от нижнего левого угла изображения
число с плавающей запятой или None
bool
BboxBaseили Nonebool
Patch или (Path, Transform) или None
число с плавающей запятой
str
bool
object
bool
список объектов
AbstractPathEffectNone, bool, число с плавающей запятой или вызываемый объект
bool
(scale: float, length: float, randomness: float)
bool или None
str
bool
число с плавающей запятой
© 2012–2026 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/stable/api/table_api.html