matplotlib表中的中心文本

时间:2014-09-17 17:37:42

标签: python matplotlib

我正在尝试将文本置于matplotlib表格单元格中,而默认值似乎是右对齐。我查看了Table对象的文档,但是我找不到任何有用的东西。

有没有简单的方法来实现居中?

3 个答案:

答案 0 :(得分:15)

尝试编辑样本here

添加

cellLoc='center'

the_table = plt.table(cellText=cell_text,
                      rowLabels=rows,
                      rowColours=colors,
                      colLabels=columns,
                      loc='bottom')

得到 enter image description here

答案 1 :(得分:0)

根据文档,在单元格对象中有这种方法:

set_text_props(self, **kwargs)

kwargs可能引用文本方法/属性,例如:

horizontalalignment or ha = [ 'center' | 'right' | 'left' ]

那么,那么:

cell.set_text_props(ha='center')

答案 2 :(得分:0)

另一个单独编辑单元格对齐的答案适用于这种情况,更常见的是只有任意列(但不是全部)要居中(或任何特定单元格)。

假设您有5行 - 3列表。如果您只想编辑第一列:

the_table = plt.table(cellText=cell_text,
                      rowLabels=rows,
                      rowColours=colors,
                      colLabels=columns,
                      loc='bottom')

cells = the_table.properties()["celld"]
for i in range(0, 5):
    cells[i, 0]._loc = 'center'

在我看了table.py source

之前,我一直坚持这一点