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

如何用Matplotlib绘制同尺寸双卫星图:单色彩条且图像等大

解决方案

直接用mpl_toolkits.axes_grid1里的make_axes_locatable工具,它能自动为分析图创建高度完全匹配的色彩条,同时保证两张卫星图的显示尺寸完全一致,不用手动调整任何比例参数。

完整代码示例:

import matplotlib.pyplot as plt
from mpl_toolkits.axes_grid1 import make_axes_locatable

# 假设rgb_img和analysis是已加载的300*300图像数据
fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(12, 6))  # 可根据需求调整整体画布大小

# 绘制真彩色图
ax1.imshow(rgb_img)
ax1.axis('off')

# 绘制分析图并添加匹配高度的色彩条
im = ax2.imshow(analysis)
ax2.axis('off')

# 创建分割器,为色条预留空间
divider = make_axes_locatable(ax2)
cax = divider.append_axes("right", size="5%", pad=0.1)  # size控制色条宽度,pad控制间距
fig.colorbar(im, cax=cax)

plt.tight_layout()  # 自动调整布局,避免元素重叠
plt.show()

核心优势:

  • subplots(1,2)自动生成两个尺寸完全一致的子图,从根源保证两张卫星图显示大小相同
  • make_axes_locatable基于分析图的子图尺寸,精确计算色条高度,让色条和分析图完美对齐
  • 无需手动计算GridSpec的比例分配,所有布局逻辑由Matplotlib自动完成

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 10:22:42