如何将Matplotlib表格单元格内的数字对齐到左上角?
Matplotlib表格单元格文本左上角对齐解决方案
你的代码里已经用到了set_text_props,但没达到预期效果的原因是:仅设置垂直对齐va='bottom'不够,还需要明确设置水平对齐ha='left',另外默认的单元格内边距会让文本和角落有间距,可以通过调整内边距优化效果。
修改后的完整代码:
import matplotlib.pyplot as plt fig = plt.figure() ax = fig.add_subplot() ax.axis('off') table = ax.table( cellText=[[1, 2, 3, 4, 5, 6, 7], [8, 9, 10, 11, 12, 13, 14]], loc='center', ) table.set_fontsize(10) table.scale(1, 4) for (row, col), cell in table.get_celld().items(): # 同时设置文本水平左对齐、垂直底部对齐 cell.set_text_props(va='bottom', ha='left') # 减小内边距,让文本更贴近单元格左上角 cell.set_pad(0.1)
关键说明:
va='bottom':让文本在垂直方向对齐到单元格底部ha='left':让文本在水平方向对齐到单元格左侧set_pad(0.1):缩小单元格内边距(默认值更大),消除文本和角落的空隙,让对齐效果更明显
内容的提问来源于stack exchange,提问作者jomurmiranda
相关产品推荐
相关产品推荐

