5

第二个子图只是第一个绘制了覆盖图的图像。在第二个图中,似乎有白色填充/边界。如何删除此填充/空白?

在此处输入图像描述

为了完整起见,这里是执行绘图的代码片段:

fig, ax = plt.subplots(1, 2)
fig.set_size_inches(16, 6, forward=True)
plt.subplots_adjust(0.05, 0.05, 0.95, 0.95, 0.05, 0.05)
ax[0].set_title("Region Labels")
ax[0].imshow(image_labels)

ax[1].set_title("Region Connectivity Graph")
ax[1].imshow(image_labels)
for edge in edges:
    ax[1].plot([centers[edge[0]][0],centers[edge[1]][0]],
             [centers[edge[0]][1],centers[edge[1]][1]]) 
for a in ax:
    a.set_xticks(())
    a.set_yticks(())
plt.show()
4

1 回答 1

5

默认情况下,Matplotlib 会为绘制的数据添加一些边距。我无法测试它,因为它没有你的image_labelsand centers,但这应该正常工作:

ax[1].autoscale_view('tight')

另一种方法是手动设置轴的 xlim 和 ylim:

ax[1].set_xlim(0,image_labels.shape[1])
ax[1].set_ylim(0,image_labels.shape[0])
于 2013-04-23T06:59:08.250 回答