Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Matplotlib 산점도 위에 추가 점을 그리는 방법

Matplotlib에서 기존 산점도(scatter plot) 위에 추가 점을 함께 표시하고 싶다면, plt.plot() 함수를 활용하면 간단하게 해결할 수 있습니다. 아래에서 단계별로 살펴보겠습니다.

구현 단계

  • 그림(figure) 크기를 설정하고, 서브플롯 주변과 사이의 여백(padding)을 조정합니다.

  • x축과 y축에 사용할 데이터 포인트 리스트를 준비합니다.

  • scatter() 메서드를 사용해 x, y 데이터로 산점도를 생성합니다.

  • plot() 메서드에 marker='*' 옵션을 지정하여 추가 점을 별 모양 마커로 그립니다. 이때 ls='none'으로 선을 제거하고, ms=20으로 마커 크기를 키우면 점만 깔끔하게 표시됩니다.

  • show() 메서드를 호출해 최종 그림을 화면에 출력합니다.

예제 코드

from matplotlib import pyplot as plt

# 그림 크기 설정
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

# 데이터 포인트 리스트
x = [1, 2, 6, 4]
y = [1, 5, 2, 3]

# x, y 데이터로 산점도 생성
colors = plt.scatter(x, y, c=x, cmap='hot')

# 별(*) 마커로 추가 점 그리기
plt.plot([3, 4], [6, 7], marker='*', ls='none', ms=20)

# 그림 출력
plt.show()

실행 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

Matplotlib 산점도 위에 추가 점을 그리는 방법

핵심 포인트 정리

산점도 위에 새로운 점을 덧그릴 때 가장 중요한 것은 plot() 호출 시 선 스타일을 'none'으로 지정하는 것입니다. 이 옵션이 없으면 두 점을 잇는 직선이 함께 그려져 의도하지 않은 결과가 나올 수 있습니다. 또한 cmap