千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > 详解plt.table

详解plt.table

来源:千锋教育
发布人:xqq
时间: 2023-11-21 15:46:17 1700552777

一、plt.table表

import matplotlib.pyplot as plt
import numpy as np

data = np.array([[ 742,  147,   63],
                 [ 520,  313,  174],
                 [2077,  773,  226]])

fig, ax = plt.subplots()
table = ax.table(cellText=data, loc='center')
table.set_fontsize(14)
table.scale(1, 2.5)
ax.axis('off')
plt.show()

plt.table()函数通常用于绘制表格。传递一个二维数组包含要显示在表格中的单元格内容。在上述代码中,我们创建了一个3x3的二维数组,该数组包含表格中要显示的单元格的值。我们还为表格设置了字体大小和大小,将其放置在中心并将轴设置为关闭。最后,我们使用plt.show()来显示我们的表格。

二、plt.table表格内容设置背景色

import matplotlib.pyplot as plt
import numpy as np

data = np.array([[ 742,  147,   63],
                 [ 520,  313,  174],
                 [2077,  773,  226]])

fig, ax = plt.subplots()
table = ax.table(cellText=data, loc='center', cellColours=np.full_like(data, 'lightgrey'))
table.set_fontsize(14)
table.scale(1, 2.5)
ax.axis('off')
plt.show()

要从默认的灰色背景中更改单元格背景色,我们需要传递单元格颜色值的数组作为cellColours参数。在上面的代码中,我们使用了np.full_like()函数将数组中的所有元素设置为'lightgrey'。 변경背景颜色的另一种方法是使用cellColours颜色图的实例。

三、plt.table参数详

import matplotlib.pyplot as plt
import numpy as np

data = np.array([[ 742,  147,   63],
                 [ 520,  313,  174],
                 [2077,  773,  226]])

fig, ax = plt.subplots()
table = ax.table(cellText=data, loc='center', cellColours=np.full_like(data, 'lightgrey'), 
                 colWidths=[0.1]*3, rowLabels=['A', 'B', 'C'], colLabels=['X', 'Y', 'Z'])
table.set_fontsize(14)
table.scale(1, 2.5)
ax.axis('off')
plt.show()

在上面的代码中,我们添加了以下一些附加参数:

colWidths:一个浮点数列表,指定每列的宽度。 rowLabels:包含行标签的字符串列表。 colLabels:包含列标签的字符串列表。

四、plt.table字体颜色

import matplotlib.pyplot as plt
import numpy as np

data = np.array([[ 742,  147,   63],
                 [ 520,  313,  174],
                 [2077,  773,  226]])

fig, ax = plt.subplots()
table = ax.table(cellText=data, loc='center', cellColours=np.full_like(data, 'lightgrey'), 
                 colWidths=[0.1]*3, rowLabels=['A', 'B', 'C'], colLabels=['X', 'Y', 'Z'])
table.set_fontsize(14)
table.scale(1, 2.5)
for i in range(len(data)):
    for j in range(len(data[0])):
        if data[i][j] > 500:
            table.get_celld()[(i,j)].set_text_props(color='red')
ax.axis('off')
plt.show()

我们可以根据单元格内容自定义单元格字体的颜色,如上述代码中所示。在这个例子中,如果单元格的值大于500,则设置字体颜色为红色。

五、plt.table函数属性

import matplotlib.pyplot as plt
import numpy as np

data = np.array([[ 742,  147,   63],
                 [ 520,  313,  174],
                 [2077,  773,  226]])

fig, ax = plt.subplots()
table = ax.table(cellText=data, loc='center', cellColours=np.full_like(data, 'lightgrey'), 
                 colWidths=[0.1]*3, rowLabels=['A', 'B', 'C'], colLabels=['X', 'Y', 'Z'])
table.auto_set_font_size(False)
table.set_fontsize(22)
table.auto_set_column_width(col=list(range(len(data[0]))))
table.scale(1, 2.5)
ax.axis('off')
plt.show()

除了上述参数之外,plt.table()还具有许多其他有用的属性和函数,如自适应字体大小,自适应列宽,固定列宽等。在上述代码中,我们使用了以下属性和函数:

auto_set_font_size():根据表格大小自动设置字体大小。 auto_set_column_width():根据表格大小自动设置列宽。 scale():根据指定的比例缩放表格。

六、plt.table表格及字体大小

import matplotlib.pyplot as plt
import numpy as np

data = np.array([[ 742,  147,   63],
                 [ 520,  313,  174],
                 [2077,  773,  226]])

fig, ax = plt.subplots(figsize=[10, 4])
table = ax.table(cellText=data, loc='center', cellColours=np.full_like(data, 'lightgrey'), 
                 colWidths=[0.1]*3, rowLabels=['A', 'B', 'C'], colLabels=['X', 'Y', 'Z'])
table.auto_set_font_size(False)
table.set_fontsize(36)
table.auto_set_column_width(col=list(range(len(data[0]))))
table.scale(2, 4)
ax.axis('off')
plt.show()

最后,我们可以根据需要调整表格和字体大小。在上述代码中,我们通过更改figsize、设置字体大小和缩放表格来实现此目的。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT