当前位置:   article > 正文

matplotlib之pyplot模块——向子图添加表格(table())_plt.table

plt.table

当前有效matplotlib版本为:3.4.1

概述

table()函数的作用是向子图中添加表格。

函数的签名为matplotlib.pyplot.table(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)

函数的参数为:

  • cellText:表格单元格文本,字符串中的换行符暂不支持,可能导致文本超出单元格边界。类型为二维字符串列表。可选参数。
  • cellColours:表格单元格背景色。类型为二维颜色值列表。可选参数。
  • cellLoc:表格单元格文本的对齐方式。取值范围为{'left', 'center', 'right'},默认值为'right'。可选参数。
  • colWidths:表格单元格宽度。类型为浮点数列表。默认每个单元格的宽度为子图宽度/ncols。可选参数。
  • rowLabels:表格行表头文本。类型为字符串列表。 可选参数。
  • rowColours:表格行表头背景色。类型为颜色列表。可选参数。
  • rowLoc:表格行表头文本的对齐方式。取值范围为{'full', 'left', 'right'},默认值为'left'
  • colLabels:表格列表头文本。类型为字符串列表。 可选参数。
  • colColours:表格列表头背景色。类型为颜色列表。可选参数。
  • colLoc:表格列表头文本的对齐方式。取值范围为{'full', 'left', 'right'},默认值为'left'
  • loc:单元格相对于子图的位置。字符串,取值范围为matplotlib.table.Table.codes之一,matplotlib.table.Table.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}
  • bbox:绘制表格的边界框。Bbox对象,如果该参数为不None,将会覆盖 loc参数。可选参数。
  • edges:单元格边线,该属性会影响各类单元格背景色。取值为 'BRTL'中字符之一或 {'open', 'closed', 'horizontal', 'vertical'}。可选参数。
  • **kwargsmatplotlib.table.Table对象属性。

cellTextcellColours 其中之一必须之定义,这两个参数必须为二维列表, 外层列表定义行,内层列表定义列,每行必须有相同的元素个数。
表格还可以设置行标签和列标签。分别由rowLabelsrowColoursrowLoc 参数和 colLabelscolColourscolLoc参数控制。

返回值为matplotlib.table.Table对象。

案例:演示table()函数

在这里插入图片描述

import matplotlib.pyplot as plt

plt.rcParams['font.family'] = 'simhei'
fig, axes = plt.subplots(1, 2)
# 构造数据
data = [[1, 1], [1, 1]]
# 默认表格样式
axes[0].table(data)
# 隐藏x轴刻度,以防遮盖表格
axes[0].set_xticks([])
axes[0].set_title("默认样式")
# 演示表格参数
axes[1].table(cellText=data, cellColours=[['grey', 'grey'], ['grey', 'red']], cellLoc='center', colWidths=[0.1, 0.1],
              rowLabels=['a', 'b'], rowColours=['blue', 'blue'], rowLoc='center', colLabels=['A', 'B'],
              colColours=['green', 'green'], colLoc='left', loc='bottom right', bbox=None, edges='closed')
# 隐藏x轴刻度,以防遮盖表格
axes[1].set_xticks([])
axes[1].set_title("自定义样式")

plt.show()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
'
运行

案例2:使用DataFrame定制参数

import matplotlib.pyplot as plt
import pandas as pd

plt.rcParams['font.family'] = 'simhei'

data = [[1, 1], [1, 1]]
df = pd.DataFrame(data)

plt.table(cellText=df.values, rowLabels=df.index, colLabels=df.columns)
plt.xticks([])
plt.title("使用DataFrame")
plt.show()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
'
运行

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/993058
推荐阅读
相关标签
  

闽ICP备14008679号