You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为matplotlib子图表格添加标题及顶部间距,解决遮挡重叠问题

嘿,我来帮你搞定这个表格显示的问题!你遇到的顶部遮挡和表格重叠问题,本质是子图布局的间距没调好,加上标题的空间没预留够。咱们从两个核心点入手解决:

解决方案步骤

1. 调整画布与子图布局,预留足够空间

创建子图时,先设置合适的画布尺寸,再通过布局参数调整子图之间的垂直间距、画布顶部留白,从根源避免重叠和遮挡。

2. 给每个表格添加标题,并控制标题与表格的距离

在绘制每个表格的函数里,给子图添加标题,同时调整标题和表格的间距,防止挤在一起。

修改后的完整代码示例
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

# 第一步:创建画布和3个子图,设置足够的垂直画布高度
fig, axes = plt.subplots(nrows=3, ncols=1, figsize=(10, 16))  # 高度16是为了容纳3个带标题的表格,可按需调整

# 调整子图布局:top控制画布顶部留白,hspace控制子图之间的垂直间距
fig.subplots_adjust(top=0.94, hspace=0.5)

# 第二步:给每个表格添加标题并绘制
def _draw_table1(axis):
    # 这里替换成你自己的表格数据和绘制逻辑
    sample_data = pd.DataFrame(np.random.randn(6, 4), columns=["列1", "列2", "列3", "列4"])
    table = axis.table(cellText=sample_data.values, colLabels=sample_data.columns, loc="center")
    
    # 添加标题,pad参数控制标题和表格的垂直距离
    axis.set_title("第一个表格的标题", pad=25, fontsize=12)
    # 隐藏子图坐标轴,让表格显示更整洁,也节省空间
    axis.axis("off")

def _draw_table2(axis):
    sample_data = pd.DataFrame(np.random.randn(6, 4), columns=["A列", "B列", "C列", "D列"])
    table = axis.table(cellText=sample_data.values, colLabels=sample_data.columns, loc="center")
    axis.set_title("第二个表格的标题", pad=25, fontsize=12)
    axis.axis("off")

def _draw_table3(axis):
    sample_data = pd.DataFrame(np.random.randn(6, 4), columns=["X列", "Y列", "Z列", "W列"])
    table = axis.table(cellText=sample_data.values, colLabels=sample_data.columns, loc="center")
    axis.set_title("第三个表格的标题", pad=25, fontsize=12)
    axis.axis("off")

# 调用函数绘制每个表格
_draw_table1(axes[0])
_draw_table2(axes[1])
_draw_table3(axes[2])

plt.show()
关键参数说明
  • figsize=(10,16):根据表格的行数、数量调整画布高度,确保有足够空间容纳所有内容。
  • fig.subplots_adjust(top=0.94, hspace=0.5):top让画布顶部留出空间放第一个表格的标题;hspace设置子图之间的垂直间距,彻底避免表格重叠。
  • axis.set_title(..., pad=25):pad参数控制标题和表格顶部的距离,防止标题和表格内容挤在一起。
  • axis.axis("off"):隐藏子图的坐标轴,既让表格显示更清爽,也避免坐标轴占用额外空间。

如果你的子图布局不是3行1列,只需要调整subplots的nrows/ncols,再对应调整hspace(垂直间距)或wspace(水平间距)即可。

内容的提问来源于stack exchange,提问作者Glitz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 03:30:31