Вот код, который я позаимствовал из примеров примеров matplotlib с небольшими изменениями для создания горизонтальной цветовой полосы для изображения с правильно размещенной меткой:
from matplotlib import colors
import matplotlib.pyplot as plt
import numpy as np
np.random.seed(19680801)
cmap = "cool"
fig, axs = plt.subplots()
# Generate data with a range that varies from one plot to the next.
data = (1 / 10) * np.random.rand(10, 20) * 1e-6
image = axs.imshow(data, cmap=cmap)
axs.label_outer()
# Find the min and max of all colors for use in setting the color scale.
vmin = image.get_array().min()
vmax = image.get_array().max()
norm = colors.Normalize(vmin=vmin, vmax=vmax)
cbar = fig.colorbar(image, ax=axs, orientation='horizontal', fraction=.1)
cbar.ax.set_ylabel('$[M_\u2609 kpc^{{-2}}]$', position=(30,1), fontsize=20, rotation=0)
plt.show()
Но вот выход, который я не хочу.
![Figure1](https://i.stack.imgur.com/V7xLv.png)
Я хочу ярлык, который находится точно в центре colorbar
(ниже или выше). После изменения координат, указанных в position
в приведенном выше коде, кажется, что не существует какой-либо гибкости в определении положения метки. Есть ли что-то, чего я не знаю в контексте matplotlib
цветовых полос? Ваша помощь очень ценится.