使用plt.figure绘制子图时如何添加子图标题并隐藏x、y坐标轴
实现效果的修改后代码
import matplotlib.pyplot as plt import matplotlib.image as mpimg # 此处默认train为你已提前加载完成的数据集对象 fig = plt.figure(figsize=(6,6)) # 指定整体画布尺寸 for i in range(16): plt.subplot(4,4,i+1) # 4*4网格共16张子图 img = mpimg.imread(f'../input/cifar10-mu/train_images/{train["filename"][i]}') plt.imshow(img) # 新增:设置子图单独标题,可自定义内容,示例为用文件名作为子图标题 plt.title(train["filename"][i], fontsize=8) # 新增:隐藏当前子图的x、y坐标轴 plt.axis('off') fig.suptitle('Sample Images', y=1.02) # y参数可调整总标题位置,避免和子图标题重叠 plt.tight_layout() # 自动调整子图间距,避免标题、图片出现重叠遮挡 plt.show()
关键改动说明
- 子图单独标题设置:在循环中调用
plt.title()方法,参数可替换为你需要展示的任意内容,比如样本标签、索引等,fontsize参数可调整子图标题字号避免溢出 - 坐标轴隐藏:调用
plt.axis('off')即可一键隐藏当前子图的x轴、y轴刻度和边框 - 额外优化:新增
plt.tight_layout()和调整总标题y参数,避免不同元素之间出现重叠遮挡问题
内容的提问来源于stack exchange,提问作者Daniel Peng
相关产品推荐
相关产品推荐

