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_edgesстрока, по умолчанию: 'closed'
-
Границы ячейки, которые будут нарисованы линией: подстрока 'BRTL' (низ, право, верх, лево) или одно из '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
неизвестно
логическое значение
antialiasedили aaлогическое значение или None
(левый, нижний, ширина, высота)
CapStyleили {'butt', 'projecting', 'round'}BboxBaseили Noneлогическое значение
Объект Patch или (Path, Transform) или None
цвет
edgecolorили ecцвет или None
facecolorили fcцвет или None
неизвестно
логическое значение
неизвестно
строка
{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}
неизвестно
логическое значение
JoinStyleили {'miter', 'round', 'bevel'}объект
linestyleили ls{'-', '--', '-.', ':', '', (смещение, последовательность включения/выключения), ...}
linewidthили lwчисло с плавающей точкой или None
логическое значение
список объектов
AbstractPathEffectNone или логическое значение или число с плавающей точкой или вызываемая функция
логическое значение
(масштаб: число с плавающей точкой, длина: число с плавающей точкой, случайность: число с плавающей точкой)
логическое значение или None
неизвестно
неизвестно
строка
логическое значение
неизвестно
неизвестно
(число с плавающей точкой, число с плавающей точкой)
неизвестно
число с плавающей точкой
- 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
bool
цвет
словарь свойств для
patches.FancyBboxPatchнеизвестно
неизвестно
неизвестно
colorили cцвет
fontfamilyили family или fontname{FONTNAME, 'serif', 'sans-serif', 'cursive', 'fantasy', 'monospace'}
fontpropertiesили font или font_propertiesfontsizeили sizeвещественное число или {'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
объект
вещественное число (кратное размеру шрифта)
str
bool
multialignmentили ma{'left', 'right', 'center'}
bool
список
AbstractPathEffectNone или bool или float или вызываемый объект
(float, float)
bool
вещественное число или {'vertical', 'horizontal'}
{None, 'default', 'anchor'}
(масштаб: float, длина: float, случайность: float)
bool или None
объект
bool
str
bool или None
verticalalignmentили va{'baseline', 'bottom', 'center', 'center_baseline', 'top'}
bool
-
-
- set_transform(t)[source]
-
Установить преобразование объекта.
- Параметры:
-
-
t
Transform
-
t
- свойствоvisible_edges
-
Границы ячейки, которые будут нарисованы линией.
Чтение этого свойства возвращает подстроку из 'BRTL' (низ, право, верх, лево).
При установке этого свойства можно использовать подстроку 'BRTL' или одно из {'открытая', 'замкнутая', 'горизонтальная', 'вертикальная'}.
- matplotlib.table.CustomCell[source]
-
псевдоним для
Cell
- классmatplotlib.table.Table(ax, loc=None, bbox=None, **kwargs)[source]
-
Bases:
ArtistТаблица ячеек.
Таблица состоит из сетки ячеек, которые индексируются по (строка, столбец).
Для простой таблицы у вас будет полная сетка ячеек с индексами от (0, 0) до (num_rows-1, num_cols-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
MouseEvent
-
mouseevent
- Возвращает:
-
- containsbool
-
Содержит ли какие-либо значения в радиусе.
- detailsdict
-
Словарь, специфичный для графического элемента, содержащий детали контекста события, такие как точки, находящиеся в пределах радиуса выбора. См. Подклассы отдельных графических элементов для получения подробностей.
- draw(renderer)[source]
-
Отобразить графический элемент (и его дочерние элементы) с помощью заданного рендерера.
Это не имеет эффекта, если графический элемент не отображается (
Artist.get_visibleвозвращает False).- Параметры:
-
-
renderer
RendererBaseподкласс.
-
renderer
Примечания
Этот метод переопределен в подклассах графических элементов.
- propertyedges
-
Значение по умолчанию для
visible_edgesдля недавно добавленных ячеек с помощьюadd_cell.Примечания
Это значение в настоящее время влияет только на вновь созданные ячейки с помощью
add_cell.Чтобы изменить существующие ячейки, нужно явно задать их края:
for c in tab.get_celld().values(): c.visible_edges = 'horizontal'
- get_celld()[source]
-
Возвращает словарь ячеек в таблице, сопоставляющий (строка, столбец) с объектами
Cell.Примечания
Вы также можете напрямую индексировать объект Table для доступа к отдельным ячейкам:
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]
-
Установить несколько свойств одновременно.
Поддерживаемые свойства:
Свойство
Описание
функция фильтрации, которая принимает массив float (m, n, 3) и значение dpi, и возвращает массив (m, n, 3) и два смещения из левого нижнего угла изображения
скаляр или 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)[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 список str, необязательно
-
Текст для размещения в ячейках таблицы.
Примечание: Переводы строк в строках в настоящее время не учитываются и могут привести к тому, что текст выйдет за пределы ячеек.
- cellColours2D список цветов, необязательно
-
Цвета фона ячеек.
- cellLoc{'left', 'center', 'right'}, по умолчанию: 'right'
-
Выравнивание текста в ячейках.
- colWidthsсписок float, необязательно
-
Ширина столбцов в единицах области. Если не указано, все столбцы будут иметь ширину 1 / ncols.
- rowLabelsсписок str, необязательно
-
Текст ячеек заголовков строк.
- rowColoursсписок цветов, необязательно
-
Цвета ячеек заголовков строк.
- rowLoc{'left', 'center', 'right'}, по умолчанию: 'left'
-
Выравнивание текста в ячейках заголовков строк.
- colLabelsсписок str, необязательно
-
Текст ячеек заголовков столбцов.
- colColoursсписок цветов, необязательно
-
Цвета ячеек заголовков столбцов.
- colLoc{'left', 'center', 'right'}, по умолчанию: 'left'
-
Выравнивание текста в ячейках заголовков столбцов.
- locstr, необязательно
-
Положение ячейки относительно ax. Должно быть одно из значений
codes. -
bbox
Bboxили [xmin, ymin, width, height], необязательно -
Прямоугольник для рисования таблицы. Если не None, переопределяет loc.
- edgesподстрока 'BRTL' или {'open', 'closed', 'horizontal', 'vertical'}
-
Границы ячеек, которые будут отрисованы линией. Смотрите также
visible_edges.
- Возвращаемое значение:
-
Table-
Созданная таблица.
- Другие параметры:
-
- **kwargs
-
Свойства
Table.Свойство
Описание
функция фильтра, которая принимает (m, n, 3) массив чисел с плавающей точкой и значение dpi, и возвращает (m, n, 3) массив и два смещения от нижнего левого угла изображения
скаляр или None
bool
BboxBaseили Nonebool
Patch или (Path, Transform) или None
float
str
bool
объект
bool
список
AbstractPathEffectNone или 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.8.4/api/table_api.html