我尝试将gridspec的比率更改为无济于事。 我希望主图,右图和颜色条具有相同的高度。 这是我一直在使用的代码:
import numpy as np
import matplotlib.pyplot as plt
np.random.seed(0xBEEF)
matrix = np.random.randint(100, size=(10, 10))
figure = plt.figure(figsize=(8, 8))
gridspec = figure.add_gridspec(2, 2, width_ratios=(7, 1), height_ratios=(1, 7))
main_axes = figure.add_subplot(gridspec[1, 0])
main_plot = main_axes.imshow(matrix)
right_axes = figure.add_subplot(gridspec[1, 1])
right_axes.imshow(matrix[:, 0:1])
right_axes.get_xaxis().set_visible(False)
right_axes.get_yaxis().set_visible(False)
top_axes = figure.add_subplot(gridspec[0, 0])
top_axes.imshow(matrix[0:1, :])
top_axes.get_xaxis().set_visible(False)
top_axes.get_yaxis().set_visible(False)
# figure.colorbar(main_plot, ax=right_axes, fraction=1) # uncomment this line
plt.show()