Imshow с двумя цветными полосами под Matplotlib
В этой статье мы узнаем, как использовать Imshow с двумя цветными полосами в Matplotlib. Давайте обсудим некоторые концепции:
- Matplotlib - потрясающая библиотека визуализации на Python для 2D-графиков массивов. Matplotlib - это многоплатформенная библиотека визуализации данных, построенная на массивах NumPy и предназначенная для работы с более широким стеком SciPy. Он был представлен Джоном Хантером в 2002 году.
- Одним из самых больших преимуществ визуализации является то, что она позволяет нам получить визуальный доступ к огромным объемам данных в легко усваиваемых визуальных эффектах. Matplotlib состоит из нескольких графиков, таких как линия, столбец, разброс, гистограмма и т. Д.
- Функция imshow () в модуле pyplot библиотеки matplotlib используется для отображения данных в виде изображения; т.е. на обычном 2D-растре.
- Функция colorbar () в модуле pyplot библиотеки matplotlib добавляет шкалу палитры к графику, указывающую цветовую шкалу.
A simple Imshow() with one colorbar
Python3
# import libraries import matplotlib.pyplot as plt import numpy as np # create image = 10x10 array img = np.random.randint( - 100 , 100 , ( 10 , 10 )) # make plot fig, ax = plt.subplots() # show image shw = ax.imshow(img) # make bar bar = plt.colorbar(shw) # show plot with labels plt.xlabel( "X Label" ) plt.ylabel( "Y Label" ) bar.set_label( "ColorBar" ) plt.show() |
Выход :
В приведенном выше выводе мы видим, что есть одна цветная полоса с диапазоном значений от -100 до 100. Это не выглядит эффективным и не очищает разницу между маленькими положительными значениями и большими положительными значениями, аналогично не очищает разницу между маленькими отрицательными значениями и большие отрицательные значения. Здесь мы разделяем цветовую шкалу на две части:
- один с положительными значениями
- один с отрицательными значениями
С разными цветами, которые помогают нам ясно и эффективно понять сюжет. Ниже указаны все этапы такой работы.
Необходимые шаги:
- Библиотеки импорта (matplotlib)
- Создать / загрузить данные изображения
- Маскированный массив для положительных и отрицательных значений
- Сделайте график с помощью метода subplot ()
- Показать изображение с помощью метода imshow ()
- Создавайте полосы с помощью метода matplotlib.pyplot.colorbar ()
- Показать график с метками
Example:
Python3
# import libraries import matplotlib.pyplot as plt import numpy as np from numpy.ma import masked_array # create image = 10x10 array img = np.random.randint( - 100 , 100 , ( 10 , 10 )) # masked array to positive and negative values neg_img = masked_array(img, img > = 0 ) pos_img = masked_array(img, img < 0 ) # make plot fig, ax = plt.subplots() # show image shw1 = ax.imshow(neg_img, cmap = plt.cm.Reds) shw2 = ax.imshow(pos_img, cmap = plt.cm.winter) # make bars bar1 = plt.colorbar(shw1) bar2 = plt.colorbar(shw2) # show plot with labels plt.xlabel( "X Label" ) plt.ylabel( "Y Label" ) bar1.set_label( "ColorBar 1" ) bar2.set_label( "ColorBar 2" ) plt.show() |
Выход :
Внимание компьютерщик! Укрепите свои основы с помощью базового курса программирования Python и изучите основы.
Для начала подготовьтесь к собеседованию. Расширьте свои концепции структур данных с помощью курса Python DS. А чтобы начать свое путешествие по машинному обучению, присоединяйтесь к курсу Машинное обучение - базовый уровень.