[Python] 15. Scatter plot 그릴 때 circle spec line을 추가하는 방법

scatter plot 그래프에 spec(특정한 선)라인을 그리기 위해 원을 추가하는 방법에 대해 다양한 예제와 상세한 설명을 하겠습니다.
이때, 원을 추가하기 위해서는 matplotlib 라이브러리를 사용합니다.

기본적인 scatter plot에 원 추가하기

import matplotlib.pyplot as plt
import numpy as np

# 샘플 데이터 생성
x = np.random.rand(50)
y = np.random.rand(50)

# scatter plot 그리기
plt.scatter(x, y)

# 원의 중심과 반지름 설정
center = (0.5, 0.5)
radius = 0.2

# 원 그리기
circle = plt.Circle(center, radius, edgecolor='red', facecolor='none')

# 그래프에 원 추가
plt.gca().add_patch(circle)

# 그래프 표시
plt.gca().set_aspect('equal', adjustable='box')
plt.show()

출력 결과

기본적인 scatter plot에 원 추가하기 출력 결과

위 예제에서는 numpy 라이브러리를 사용하여 무작위 샘플 데이터 xy를 생성하고, scatter plot 그래프를 그립니다. 이후 Circle 클래스를 사용하여 원을 정의하고, plt.gca().add_patch()를 사용하여 원을 그래프에 추가합니다.

여러 개의 원을 추가하는 scatter plot 그래프

import matplotlib.pyplot as plt
import numpy as np

# 샘플 데이터 생성
x = np.random.rand(50)
y = np.random.rand(50)

# scatter plot 그리기
plt.scatter(x, y)

# 여러 개의 원의 중심과 반지름 설정
centers = [(0.2, 0.8), (0.7, 0.3), (0.4, 0.6)]
radii = [0.1, 0.15, 0.2]

# 여러 개의 원 그리기
for center, radius in zip(centers, radii):
    circle = plt.Circle(center, radius, edgecolor='green', facecolor='none')
    plt.gca().add_patch(circle)

# 그래프 표시
plt.gca().set_aspect('equal', adjustable='box')
plt.show()

출력 결과

여러 개의 원을 추가하는 scatter plot 그래프 출력 결과

위 예제에서는 centers 리스트와 radii 리스트를 사용하여 여러 개의 원을 그립니다.
zip() 함수를 사용하여 centersradii를 하나씩 쌍으로 가져와 원들을 그래프에 추가합니다.

scatter plot과 함께 원과 선 그리기

import matplotlib.pyplot as plt
import numpy as np

# 샘플 데이터 생성
x = np.linspace(0, 10, 100)
y = np.sin(x)

# scatter plot 그리기
plt.scatter(x, y, label='sin(x)')

# 원의 중심과 반지름 설정
center = (5, 0)
radius = 0.5

# 원 그리기
circle = plt.Circle(center, radius, edgecolor='blue', facecolor='none')
plt.gca().add_patch(circle)

# 수평 spec 라인 그리기
plt.axhline(y=0, color='red', linestyle='--', label='y=0')

# 그래프 표시
plt.legend()
plt.show()

출력 결과

scatter plot과 함께 원과 선 그리기 출력 결과

위 예제에서는 numpy 라이브러리를 사용하여 sin(x) 그래프를 그리고, 그래프 위에 원과 y=0인 수평 spec 라인을 함께 표시합니다.
원과 spec 라인을 그리기 위해서는 plt.axhline() 함수를 사용합니다.

이렇게 scatter plot 그래프에 원을 추가하고, 원과 함께 spec 라인을 그리는 방법에 대해 다양한 예제를 설명하였습니다.
이를 활용하여 다양한 데이터 시각화를 구현해보세요.

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

위로 스크롤