matplotlib.table
Рисование таблиц.
Примечание
Реализация таблиц в Matplotlib слабо поддерживается. Для более функциональной реализации таблиц вы можете попробовать blume.
Используйте фабричную функцию table для создания готовой таблицы из текстов. Если вам нужен больший контроль, используйте класс Table и его методы.
Таблица состоит из сетки ячеек, которые индексируются по (строка, столбец). Ячейка (0, 0) расположена в левом верхнем углу.
Благодарим Джона Гиля за предоставление класса и таблицы.
- classmatplotlib.table.Cell(xy, width, height, *, edgecolor='k', facecolor='w', fill=True, text='', loc='right', fontproperties=None, visible_edges='closed')[source]
-
Bases:
RectangleЯчейка — это
Rectangleс некоторыми связаннымиText.Скорее всего, вы, как пользователь, не будете создавать ячейки самостоятельно. Вместо этого вы должны использовать функцию-фабрику
tableилиTable.add_cell.- Параметры:
-
- xy2-кортеж
-
Положение левого нижнего угла ячейки.
- widthвещественное число
-
Ширина ячейки.
- heightвещественное число
-
Высота ячейки.
- edgecolorцвет, по умолчанию: 'k'
-
Цвет границы ячейки.
- facecolorцвет, по умолчанию: 'w'
-
Цвет заливки ячейки.
- fillлогическое значение, по умолчанию: True
-
Заливать ли фон ячейки.
- textстрока, необязательно
-
Текст ячейки.
- loc{'right', 'center', 'left'}
-
Выравнивание текста внутри ячейки.
- fontpropertiesсловарь, необязательно
-
Словарь, определяющий свойства шрифта текста. Поддерживаемые ключи и значения — это ключевые аргументы, принимаемые
FontProperties. - visible_edges{'closed', 'open', 'horizontal', 'vertical'} или подстрока 'BRTL'
-
Границы ячейки, которые будут нарисованы линией: подстрока '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
Примечания
Этот метод переопределяется в подклассах Artist.
- 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]
-
Установить сразу несколько свойств.
Поддерживаемые свойства:
Свойство
Описание
функция фильтра, которая принимает массив float (m, n, 3) и значение dpi, и возвращает массив (m, n, 3) и два смещения от левого нижнего угла изображения
скаляр или None
неизвестно
bool
antialiasedили aabool или None
(левый, нижний, ширина, высота)
CapStyleили {'butt', 'projecting', 'round'}BboxBaseили Nonebool
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
список
AbstractPathEffectNone или bool или число с плавающей точкой или вызываемая функция
bool
(масштаб: число с плавающей точкой, длина: число с плавающей точкой, случайность: число с плавающей точкой)
bool или None
неизвестно
неизвестно
строка
bool
неизвестно
неизвестно
(число с плавающей точкой, число с плавающей точкой)
неизвестно
число с плавающей точкой
-
- set_figure(fig)[source]
-
Установить экземпляр
Figure, к которому относится объект.- Параметры:
-
-
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или cfontfamilyили family или 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'}
строка
horizontalalignmentили ha{'left', 'center', 'right'}
bool
объект
число (кратное размеру шрифта)
строка
bool
multialignmentили ma{'left', 'right', 'center'}
bool
список
AbstractPathEffectNone или bool или float или вызываемый объект
(число, число)
bool
число или {'vertical', 'horizontal'}
{None, 'default', 'anchor'}
(масштаб: число, длина: число, случайность: число)
bool или None
объект
bool
строка
bool, по умолчанию:
rcParams["text.usetex"](по умолчанию:False)
-
- set_transform(t)[source]
-
Установить преобразование объекта.
- Параметры:
-
-
t
Transform
-
t
- свойствоvisible_edges
-
Границы ячейки, которые должны быть нарисованы линией.
Чтение этого свойства возвращает подстроку 'BRTL' (низ, право, верх, лево).
При установке этого свойства можно использовать подстроку 'BRTL' или одно из значений {'open', 'closed', 'horizontal', 'vertical'}.
- matplotlib.table.CustomCell[source]
-
Псевдоним для
Cell
- классmatplotlib.table.Table(ax, loc=None, bbox=None, **kwargs)[source]
-
Базы:
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
Примечания
Этот метод переопределен в подклассах объектов художника.
- свойствоedges
-
Значение по умолчанию
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]
-
Установить сразу несколько свойств.
Поддерживаемые свойства:
Свойство
Описание
Функция фильтра, которая принимает массив (m, n, 3) с плавающей точкой и значение dpi, и возвращает массив (m, n, 3) и два смещения от нижнего левого угла изображения
скаляр или None
bool
BboxBaseили Nonebool
Объект Patch или (Path, Transform) или None
float
str
bool
объект
bool
список
AbstractPathEffectNone или bool или float или вызываемый объект
bool
(масштаб: float, длина: float, случайность: 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 с помощьюAxes.add_table.- Параметры:
-
- cellText2D list of str, optional
-
Тексты для размещения в ячейках таблицы.
Примечание: Переводы строк в строках в настоящее время не учитываются и могут привести к тому, что текст выйдет за границы ячейки.
- cellColours2D list of цвет, optional
-
Цвета фона ячеек.
- cellLoc{'right', 'center', 'left'}
-
Выравнивание текста в ячейках.
- colWidthslist of float, optional
-
Ширина столбцов в единицах осей. Если не задано, все столбцы будут иметь ширину 1 / ncols.
- rowLabelslist of str, optional
-
Текст ячеек заголовков строк.
- rowColourslist of цвет, optional
-
Цвета ячеек заголовков строк.
- rowLoc{'left', 'center', 'right'}
-
Выравнивание текста ячеек заголовков строк.
- colLabelslist of str, optional
-
Текст ячеек заголовков столбцов.
- colColourslist of цвет, optional
-
Цвета ячеек заголовков столбцов.
- colLoc{'center', 'left', 'right'}
-
Выравнивание текста ячеек заголовков столбцов.
- locstr, default: 'bottom'
-
Положение ячейки относительно ax. Должно быть одно из значений
codes. -
bbox
Bboxили [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
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/stable/api/table_api.html