matplotlib dessine une barre de couleur de dégradé d'échelle de couleurs

Cet exemple utilise la bibliothèque matplotlib pour dessiner une carte de dégradé des trois couleurs primaires rouge, vert et bleu. Le principe de base est d'utiliser des rectangles de couleur unie longs et étroits pour représenter chaque niveau de couleur et de les dessiner dans une image, l'effet est comme indiqué sur la figure.

rendus

1 Idée de mise en œuvre

Remarque : dans matplotlib, la plage d'éléments du triplet de couleur est de 0 à 1,0 au lieu de 0 à 255.

Plage RVB de la barre rouge : (0, 0, 0)~(1.0, 0, 0)

Plage RVB de la barre verte : (0, 0, 0)~(0, 1.0, 0)

Plage RVB de la barre bleue : (0, 0, 0)~(0, 0, 1.0)

2 codes

import matplotlib.pyplot as plt

a = [i for i in range(256)] #色阶数(256),越大越精细
rgb_mask = [0, 0, 1]    #更改0与1的顺序可以调换色条颜色

fig = plt.figure()
ax = fig.add_subplot() #创建子图
ax.set(xlim=(0, 300), ylim=(0, 13)) #坐标范围

for c in range(3):
    for i in range(256):
        rect = plt.Rectangle(xy=(i, 3.5*c+4),
                             width=1,
                             height=1,
                             color=(a[i]/255*rgb_mask[c%3], a[i]/255*rgb_mask[(c+1)%3], a[i]/255*rgb_mask[(c+2)%3])
                             )
        ax.add_patch(rect)

plt.show()

 

Je suppose que tu aimes

Origine blog.csdn.net/diqiudq/article/details/126296221
conseillé
Classement