Как добиться цветовой карты Фиджи "HiLo" на графиках изображений matplotlib, чтобы пометить нижние и передержанные пиксели

Цветовые карты Matplotlib не предоставляют цветовую карту HiLo для изображений, которая часто используется в микроскопии. HiLo показывает градиент уровня серого от низких до высоких значений, но значения на нижнем конце отображаются синим цветом, а значения на верхнем - красным.

Как получить эту цветовую карту для изображений matplotlib?

1 ответ

Для достижения этого можно использовать методы set_under и set_over класса LinearSegmentedColormap, от которых унаследованы цветовые карты.

# minimal example
from matplotlib import cm
import matplotlib.pyplot as plt
from numpy import arange

im_array = arange(0, 256)

cmap = cm.gray
cmap.set_over(color='red')
cmap.set_under(color='blue')

fig = plt.figure()
ax = fig.add_subplot(111)

vmin = im_array.min() + 1
vmax = im_array.max() - 1

ax.imshow(im_array.reshape((16, 16)), cmap=cmap, vmin=vmin, vmax=vmax)

Привет пример

Может быть, это кому-то помогает. Ура! S

Другие вопросы по тегам