Matplotlib에서 산점도의 색상 설정
Suraj Joshi
2020년12월25일
Matplotlib에서 마커의 색상을 설정하려면matplotlib.pyplot.scatter()
메서드에서c
매개 변수를 설정합니다.
산점도에서 마커 색상 설정
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5, 6, 7]
y = [2, 1, 4, 7, 4, 3, 2]
plt.scatter(x, y, c="red")
plt.xlabel("X")
plt.ylabel("Y")
plt.title("Simple Scatter Plot")
plt.show()
출력:
여기서는scatter()
메서드에서c = "red"
를 설정하여 산점도의 모든 마커 색상을 빨간색으로 설정합니다.
두 개의 다른 데이터 세트가있는 경우 c
매개 변수의 다른 값을 사용하여 각 데이터 세트에 다른 색상을 사용할 수 있습니다.
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5, 6, 7]
y1 = [2, 1, 4, 7, 4, 3, 2]
y2 = [4, 4, 5, 3, 8, 9, 6]
plt.scatter(x, y1, c="red")
plt.scatter(x, y2, c="green")
plt.xlabel("X")
plt.ylabel("Y")
plt.title("Scatter Plot of two different datasets")
plt.show()
출력:
여기서 데이터 세트 y1
은 산점도에서 빨간색으로 표시되고 데이터 세트 y2
는 산점도에서 녹색으로 표시됩니다.
데이터 세트가 너무 많으면 매번 각 데이터 세트에 수동으로 색상을 할당하기가 어렵습니다. 이러한 경우 colormap
을 사용하여 각 데이터 세트에 대한 색상을 생성 할 수 있습니다.
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.cm as cm
x = np.array([1, 2, 3, 4, 5])
y = np.random.random((10, 5))
colors = cm.rainbow(np.linspace(0, 1, y.shape[0]))
for dataset, color in zip(y, colors):
plt.scatter(x, dataset, color=color)
plt.xlabel("X")
plt.ylabel("Y")
plt.show()
출력:
행렬 y
의 각 행에 대해 다른 색을 생성하고 각 행을 다른 색으로 플로팅합니다.
생성 된 색상 맵을 사용하는 대신 목록의 산점도에 사용할 색상을 지정하고 목록을itertools.cycle()
메서드에 전달하여 사용자 정의 색상 순환기를 만들 수도 있습니다. 색상을 반복하기 위해next()
함수를 사용합니다.
import itertools
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.cm as cm
x = np.array([1, 2, 3, 4, 5])
y = np.random.random((10, 5))
color_cycle = itertools.cycle(
["orange", "pink", "blue", "brown", "red", "grey", "yellow", "green"]
)
for row in y:
plt.scatter(x, row, color=next(color_cycle))
plt.xlabel("X")
plt.ylabel("Y")
plt.show()
출력:
itertools.cycle()
메소드는 주어진 색상 세트에서 순환 색상 목록을 생성하고 각 행은 순환 목록에서 색상을 선택하는 산점도에 그려집니다.
작가: Suraj Joshi
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn관련 문장 - Matplotlib Scatter Plot
- Matplotlib 에서 x, y 좌표 목록을 그리는 방법
- Matplotlib 레이블 분산 점
- Matplotlib의 플롯 포인트
- Matplotlib에서 산점도의 범례를 만드는 방법