Python의 색상

Shivam Arora 2022년12월21일
Python의 색상

이 기사는 그래프를 표시하기 위해 Python의 Matplotlib 모듈에서 사용하는 명명된 색상을 소개하는 것을 목표로 합니다. 그래프를 그릴 때 Python은 Matplotlib 라이브러리를 통해 표시되는 명명된 색상을 사용자가 선택할 수 있는 옵션을 제공합니다.

Python에서 색상 이름과 해당 16진수 코드는 color.py 모듈의 사전에서 검색됩니다.

다음 코드에서는 이 모듈의 색상 이름을 인쇄합니다.

import matplotlib

for cname, hex in matplotlib.colors.cnames.items():
    print(cname, hex)

출력:

'aliceblue':            '#F0F8FF',
'antiquewhite':         '#FAEBD7',
'aqua':                 '#00FFFF',
'aquamarine':           '#7FFFD4',
'azure':                '#F0FFFF',
'beige':                '#F5F5DC',
'bisque':               '#FFE4C4',
'black':                '#000000',
'blanchedalmond':       '#FFEBCD',
'blue':                 '#0000FF',
'blueviolet':           '#8A2BE2',
'brown':                '#A52A2A',
'burlywood':            '#DEB887',
'cadetblue':            '#5F9EA0',
...more

matplotlib.colors.cnames.items()는 색상의 이름과 코드가 저장된 사전 모음을 반환합니다. 이름은 사전의 키로 저장되고 16진수 코드는 값으로 저장됩니다.

호환되는 라이브러리가 있는 다양한 유형의 그래프 및 그림에 이러한 색상을 사용할 수 있습니다. 이 모든 색상을 단일 그래프에 표시하고 각 색상을 비교할 수 있습니다.

다음 코드를 참조하십시오.

import matplotlib.pyplot as plt
import matplotlib.patches as patches
import matplotlib.colors as colors
import math


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

ratio = 1.0 / 3.0
count = math.ceil(math.sqrt(len(colors.cnames)))
x_count = count * ratio
y_count = count / ratio
x = 0
y = 0
w = 1 / x_count
h = 1 / y_count

for cl in colors.cnames:
    pos = (x / x_count, y / y_count)
    ax.add_patch(patches.Rectangle(pos, w, h, color=cl))
    ax.annotate(cl, xy=pos)
    if y >= y_count - 1:
        x += 1
        y = 0
    else:
        y += 1

plt.show()

출력 플롯:

파이썬 색상

위의 코드에서 각 색상을 해당 이름으로 플로팅했습니다. 그림을 여러 서브플롯으로 나누고 각 색상의 각 축에 add_patch() 함수를 사용하여 작은 직사각형 패치에 각 색상을 플로팅했습니다.

관련 문장 - Python Color