Отображение цветовой шкалы без связанной карты изображений - PullRequest
0 голосов
/ 30 сентября 2019

У меня есть фигура matplotlib, которая отображает изображение, гистограмму и колобар под гистограммой, сгенерированные следующим кодом:

import numpy as np
import imageio
import matplotlib.pyplot as plt
from mpl_toolkits.axes_grid1 import make_axes_locatable

image = imageio.imread('imageio:camera.png')

fig, axes = plt.subplots(2,1,figsize=(8,4))
divider = make_axes_locatable(axes[1])
cbar_ax = divider.append_axes("bottom", size='15%', pad=0.02)

im = axes[0].imshow(image,cmap='gray')
values, bins, patches = axes[1].hist(image.ravel(), 255, color='#cccccc', density=True)
cbar = plt.colorbar(im, cax=cbar_ax, orientation='horizontal')

fig.savefig('test.png', dpi=300)

plt.show()

Этот код генерирует именно это изображение ниже

image histogram and colorbar

Поскольку это повторяющееся изображение (я изучаю гистограмму), я хотел бы создать фигуру, просто отображающую гистограмму и соответствующую цветную полосу под ней.

Но для отображения цветовой полосы обязательно указывается image_map в качестве аргумента, и мне нужно вызвать ax.imshow(), чтобы получить image_map. Точный вывод, который я хочу, выглядит примерно так:

histogram and colobar

И я не знаю, как этого добиться.

Конечно, я мог редактировать свои изображения в каком-то редакторе (как я это делал), но это неприемлемо, поскольку каждое обновление требует от меня огромных усилий для редактирования многих изображений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...