matplotlib.table
Рисование таблиц.
Примечание
Реализация таблиц в Matplotlib слабо поддерживается. Для более функциональной реализации таблиц вы можете попробовать blume.
Используйте фабричную функцию table, чтобы создать готовую таблицу из текста. Если вам нужен больший контроль, используйте класс Table и его методы.
Таблица состоит из сетки ячеек, которые индексируются по (строка, столбец). Ячейка (0, 0) расположена в верхнем левом углу.
Благодарим Джона Гилла за предоставление класса и таблицы.
- classmatplotlib.table.Cell(xy, width, height, *, edgecolor='k', facecolor='w', fill=True, text='', loc=None, fontproperties=None, visible_edges='closed')[source]
-
Bases:
RectangleЯчейка — это
Rectangleс некоторыми связаннымиText.Вероятно, вам не придётся создавать ячейки самостоятельно. Вместо этого вы должны использовать функцию-фабрику
tableилиTable.add_cell.- Параметры:
-
- xy2-кортеж
-
Позиция левого нижнего угла ячейки.
- widthfloat
-
Ширина ячейки.
- heightfloat
-
Высота ячейки.
- edgecolorцвет
-
Цвет границы ячейки.
- facecolorцвет
-
Цвет заливки ячейки.
- fillbool
-
Заливать ли фон ячейки.
- textstr
-
Текст ячейки.
- loc{'left', 'center', 'right'}, по умолчанию: 'right'
-
Выравнивание текста внутри ячейки.
- fontpropertiesdict
-
Словарь, определяющий свойства шрифта текста. Поддерживаемые ключи и значения — это ключевые аргументы, принимаемые
FontProperties. - visible_edgesstr, по умолчанию: 'closed'
-
Границы ячейки, которые будут нарисованы линией: подстрока 'BRTL' (bottom, right, top, left), или одно из 'open' (нет границ), 'closed' (все границы), 'horizontal' (нижняя и верхняя), 'vertical' (правая и левая).
- PAD=0.1
-
Отступ между текстом и прямоугольником.
- auto_set_font_size(renderer)[source]
-
Уменьшение размера шрифта до тех пор, пока текст не поместится в ширину ячейки.
- draw(renderer)[source]
-
Отображение объекта-художника (и его потомков) с помощью заданного рендерера.
Это не оказывает никакого эффекта, если художник не отображается (
Artist.get_visibleвозвращает False).- Параметры:
-
-
renderer
RendererBaseподкласс.
-
renderer
Примечания
Этот метод переопределён в подклассах художника.
- get_fontsize()[source]
-
Возвращает размер шрифта ячейки.
- get_path()[source]
-
Возвращает
Pathдляvisible_edges.
- get_required_width(renderer)[source]
-
Возвращает минимальную необходимую ширину ячейки.
- get_text()[source]
-
Возвращает экземпляр
Textячейки.
- get_text_bounds(renderer)[source]
-
Возвращает координаты области текста в виде (x, y, ширина, высота) в координатах таблицы.
- 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>, 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>)[source]
-
Установить сразу несколько свойств.
Поддерживаемые свойства:
Свойство
Описание
функция фильтра, которая принимает (m, n, 3) массив чисел с плавающей точкой и значение dpi, и возвращает (m, n, 3) массив и два смещения от нижнего левого угла изображения
скаляр или None
неизвестно
bool
antialiasedили aabool или None
(левый, нижний, ширина, высота)
CapStyleили {'butt', 'projecting', 'round'}bool
Patch или (Path, Transform) или None
цвет
edgecolorили ecцвет или None
facecolorили fcцвет или None
неизвестно
bool
неизвестно
строка
{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}
неизвестно
bool
JoinStyleили {'miter', 'round', 'bevel'}объект
linestyleили ls{'-', '--', '-.', ':', '', (смещение, последовательность включения-выключения), ...}
linewidthили lwчисло с плавающей точкой или None
bool
None или bool или число с плавающей точкой или вызываемая функция
bool
(масштаб: число с плавающей точкой, длина: число с плавающей точкой, случайность: число с плавающей точкой)
bool или None
неизвестно
неизвестно
строка
bool
неизвестно
неизвестно
(число с плавающей точкой, число с плавающей точкой)
неизвестно
число с плавающей точкой
- set_figure(fig)[source]
-
Установить экземпляр
Figure, к которому принадлежит элемент.- Parameters:
-
-
fig
Figure
-
fig
-
- set_fontsize(size)[source]
-
Установить размер шрифта текста.
- set_text_props(**kwargs)[source]
-
Обновление свойств текста.
Допустимые ключевые аргументы:
Свойство
Описание
функция фильтра, которая принимает массив float (m, n, 3) и значение dpi, и возвращает массив (m, n, 3) и два смещения от нижнего левого угла изображения
скаляр или None
bool
цвет
словарь со свойствами для
patches.FancyBboxPatchнеизвестно
неизвестно
неизвестно
colorили cцвет
fontfamilyили family{ШРИФТ, 'serif', 'sans-serif', 'cursive', 'fantasy', 'monospace'}
fontpropertiesили font или font_propertiesfontsizeили sizefloat или {'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'}
fontstyleили style{'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
horizontalalignmentили ha{'left', 'center', 'right'}
bool
объект
float (кратное размеру шрифта)
str
bool
multialignmentили ma{'left', 'right', 'center'}
bool
None или bool или float или вызываемый объект
(float, float)
bool
float или {'vertical', 'horizontal'}
{None, 'default', 'anchor'}
(масштаб: float, длина: float, случайность: float)
bool или None
объект
bool
str
bool или None
verticalalignmentили va{'bottom', 'baseline', 'center', 'center_baseline', 'top'}
bool
bool
-
-
- set_transform(trans)[source]
-
Установить преобразование объекта.
- Параметры:
-
-
t
Transform
-
t
- свойствоvisible_edges
-
Границы ячейки, которые будут нарисованы линией.
Чтение этого свойства возвращает подстроку из 'BRTL' (низ, право, верх, лево).
При установке этого свойства вы можете использовать подстроку из 'BRTL' или одно из {'open', 'closed', 'horizontal', 'vertical'}.
- matplotlib.table.CustomCell[source]
-
Псевдоним для
Cell
- classmatplotlib.table.Table(ax, loc=None, bbox=None, **kwargs)[source]
-
Bases:
ArtistТаблица ячеек.
Таблица состоит из сетки ячеек, индексированных по (строка, столбец).
Для простой таблицы у вас будет полная сетка ячеек с индексами от (0, 0) до (число_строк-1, число_столбцов-1), где ячейка (0, 0) расположена в верхнем левом углу. Однако вы также можете добавить ячейки с отрицательными индексами. Вам не нужно добавлять ячейку в каждую позицию сетки, поэтому вы можете создавать таблицы с пропущенными ячейками.
Примечание: Обычно вы не создаёте пустую таблицу с нуля. Вместо этого используйте
tableдля создания таблицы из данных.- Параметры:
- Другие параметры:
-
- **kwargs
-
Свойства
Artist.
- AXESPAD=0.02
-
Отступ между осями и краем таблицы в единицах осей.
- FONTSIZE=10
- add_cell(row, col, *args, **kwargs)[source]
-
Создаёт ячейку и добавляет её в таблицу.
- Параметры:
-
- rowint
-
Индекс строки.
- colint
-
Индекс столбца.
- *args, **kwargs
-
Все остальные параметры передаются в
Cell.
- Возвращает:
-
Cell-
Созданная ячейка.
- auto_set_column_width(col)[source]
-
Автоматически устанавливает ширину заданных столбцов на оптимальные значения.
- Параметры:
-
- colint или последовательность целых чисел
-
Индексы столбцов для автоматического масштабирования.
- auto_set_font_size(value=True)[source]
-
Автоматически устанавливает размер шрифта.
- 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}
-
Возможные значения для размещения таблицы относительно осей.
- contains(mouseevent)[source]
-
Проверка, содержит ли элемент событие мыши.
- Параметры:
-
-
mouseevent
matplotlib.backend_bases.MouseEvent
-
mouseevent
- Возвращает:
-
- containsbool
-
Включает ли какие-либо значения в радиусе.
- detailsdict
-
Словарь специфичных для элемента данных о контексте события, например, какие точки содержатся в радиусе выбора. См. отдельные подклассы Artist для получения подробностей.
- draw(renderer)[source]
-
Рисует элемент (и его дочерние элементы) с помощью заданного рендерера.
Не имеет эффекта, если элемент не отображается (
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()[source]
-
Возвращает словарь ячеек таблицы, сопоставляющий (строка, столбец) с
Cell.Примечания
Также можно напрямую обратиться к отдельным ячейкам таблицы:
cell = table[row, col]
- get_children()[source]
-
Возвращает элементы, содержащиеся в таблице.
- get_window_extent(renderer=None)[source]
-
Получить ограничивающий прямоугольник объекта в пространстве отображения.
Ширина и высота ограничивающего прямоугольника неотрицательны.
Подклассы должны переопределить для включения в вычисление «плотного» ограничивающего прямоугольника. По умолчанию возвращается пустой ограничивающий прямоугольник в точке 0, 0.
Будьте осторожны при использовании этой функции, результаты не обновятся, если изменится область видимости объекта в окне. Область может измениться из-за любых изменений в стеке преобразований, таких как изменение пределов осей, размера рисунка или используемого холста (как это делается при сохранении рисунка). Это может привести к неожиданному поведению, когда интерактивные фигуры будут выглядеть нормально на экране, но будут сохранены некорректно.
- scale(xscale, yscale)[source]
-
Масштабировать ширину столбцов на 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>)[source]
-
Установить несколько свойств одновременно.
Поддерживаемые свойства:
Property
Description
функция фильтра, которая принимает массив float (m, n, 3) и значение dpi, и возвращает массив (m, n, 3) и два смещения от левого нижнего угла изображения
скаляр или None
bool
bool
Patch или (Path, Transform) или None
float
str
bool
object
bool
None или bool или float или вызываемый объект
bool
(scale: float, length: float, randomness: float)
bool или None
str
bool
float
- set_fontsize(size)[source]
-
Установить размер шрифта, в пунктах, текста ячейки.
- Параметры:
-
- 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)[source]
-
Добавление таблицы в
Axes.Необходимо указать хотя бы один из параметров cellText или cellColours. Эти параметры должны быть двумерными списками, где внешние списки определяют строки, а внутренние — значения столбцов в каждой строке. Каждая строка должна содержать одинаковое количество элементов.
Таблица может иметь заголовки строк и столбцов, которые настраиваются с помощью параметров rowLabels, rowColours, rowLoc и colLabels, colColours, colLoc соответственно.
Для более тонкого управления таблицами используйте класс
Tableи добавьте его в ось с помощьюAxes.add_table.- Параметры:
-
- cellText2D list of str, optional
-
Тексты для размещения в ячейках таблицы.
Примечание: Переводы строк в строках в настоящее время не учитываются и могут привести к тому, что текст выйдет за границы ячейки.
- cellColours2D list of colors, optional
-
Цвета фона ячеек.
- cellLoc{'left', 'center', 'right'}, default: 'right'
-
Выравнивание текста внутри ячеек.
- colWidthslist of float, optional
-
Ширина столбцов в единицах оси. Если не указано, все столбцы будут иметь ширину 1 / ncols.
- rowLabelslist of str, optional
-
Текст ячеек заголовка строк.
- rowColourslist of colors, optional
-
Цвета ячеек заголовка строк.
- rowLoc{'left', 'center', 'right'}, default: 'left'
-
Выравнивание текста в ячейках заголовка строк.
- colLabelslist of str, optional
-
Текст ячеек заголовка столбцов.
- colColourslist of colors, optional
-
Цвета ячеек заголовка столбцов.
- colLoc{'left', 'center', 'right'}, default: 'left'
-
Выравнивание текста в ячейках заголовка столбцов.
- locstr, optional
-
Положение ячейки относительно ax. Должно быть одно из значений
codes. -
bbox
Bbox, optional -
Прямоугольник для рисования таблицы. Если это не None, это переопределяет loc.
- edgessubstring of 'BRTL' or {'open', 'closed', 'horizontal', 'vertical'}
-
Границы ячеек, которые должны быть нарисованы линией. См. также
visible_edges.
- Возвращаемое значение:
-
Table-
Созданная таблица.
- Другие параметры:
-
- **kwargs
-
Свойства
Table.Свойство
Описание
функция фильтра, которая принимает массив float (m, n, 3) и значение dpi, и возвращает массив (m, n, 3) и два смещения от нижнего левого угла изображения
скаляр или None
bool
bool
Patch или (Path, Transform) или None
float
str
bool
объект
bool
None или bool или float или вызываемый объект
bool
(scale: float, length: float, randomness: float)
bool или None
str
bool
float
© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.6.0/api/table_api.html