Matplotlib의 Pylab(Pyplot) 산점도(scatter plot)에서 각 데이터 포인트마다 서로 다른 마커를 적용하려면 아래 단계를 따르면 됩니다.
- 그림 크기 설정: figure 크기를 지정하고 서브플롯 주변과 사이의 여백(padding)을 조정합니다.
- 샘플 수 정의: 샘플 데이터의 개수를 나타내는 변수 N을 초기화합니다.
- 랜덤 데이터 생성: NumPy를 활용해 x, y 좌표의 무작위 데이터 포인트를 생성합니다.
- 마커 리스트 작성: 사용할 마커 기호들을 리스트로 준비합니다.
- 데이터 결합: zip() 함수로 x, y 좌표와 마커를 하나로 묶습니다.
- 반복 플롯: zip 객체를 순회하며 각 포인트를 서로 다른 마커로 산점도에 그립니다.
- 그래프 출력: show() 메서드를 호출해 최종 그림을 화면에 표시합니다.
예제 코드
import numpy as np from matplotlib import pyplot as plt plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True N = 10 x = np.random.rand(N) y = np.random.rand(N) markers = ["d", "v", "s", "*", "^", "d", "v", "s", "*", "^"] for xp, yp, m in zip(x, y, markers): plt.scatter(xp, yp, marker=m, s=50) plt.show()
실행 결과

