소개
이 튜토리얼은 Python 의 Matplotlib 을 사용하여 텍스트 화살표가 있는 주석이 달린 산점도를 만드는 과정을 안내합니다.
VM 팁
VM 시작이 완료되면, 왼쪽 상단 모서리를 클릭하여 Notebook 탭으로 전환하여 실습을 위해 Jupyter Notebook에 액세스하십시오.
때로는 Jupyter Notebook 이 로딩을 완료하는 데 몇 초 정도 기다려야 할 수 있습니다. Jupyter Notebook 의 제한으로 인해 작업의 유효성 검사는 자동화될 수 없습니다.
학습 중 문제가 발생하면 언제든지 Labby 에게 문의하십시오. 세션 후 피드백을 제공해주시면 문제를 신속하게 해결해 드리겠습니다.
라이브러리 가져오기 및 임의 데이터 생성
먼저, 필요한 라이브러리를 가져오고 산점도에 사용할 임의 데이터를 생성해야 합니다.
import matplotlib.pyplot as plt
import numpy as np
## Fixing random state for reproducibility
np.random.seed(19680801)
fig, ax = plt.subplots(figsize=(5, 5))
ax.set_aspect(1)
x1 = -1 + np.random.randn(100)
y1 = -1 + np.random.randn(100)
x2 = 1. + np.random.randn(100)
y2 = 1. + np.random.randn(100)
ax.scatter(x1, y1, color="r")
ax.scatter(x2, y2, color="g")
플롯에 텍스트 주석 추가
다음으로, ax.text() 함수를 사용하여 플롯에 텍스트 주석을 추가합니다. "Sample A"와 "Sample B"에 대한 두 개의 주석을 생성합니다.
bbox_props = dict(boxstyle="round", fc="w", ec="0.5", alpha=0.9)
ax.text(-2, -2, "Sample A", ha="center", va="center", size=20,
bbox=bbox_props)
ax.text(2, 2, "Sample B", ha="center", va="center", size=20,
bbox=bbox_props)
방향을 나타내는 텍스트 화살표 추가
데이터의 방향을 나타내기 위해, ax.text() 함수와 boxstyle을 "rarrow"로 설정한 bbox 매개변수를 사용하여 텍스트 화살표를 추가합니다.
bbox_props = dict(boxstyle="rarrow", fc=(0.8, 0.9, 0.9), ec="b", lw=2)
t = ax.text(0, 0, "Direction", ha="center", va="center", rotation=45,
size=15,
bbox=bbox_props)
bb = t.get_bbox_patch()
bb.set_boxstyle("rarrow", pad=0.6)
플롯 범위 설정 및 플롯 표시
마지막으로, ax.set_xlim(), ax.set_ylim(), 그리고 plt.show() 함수를 사용하여 플롯의 x 및 y 범위를 설정하고 플롯을 표시합니다.
ax.set_xlim(-4, 4)
ax.set_ylim(-4, 4)
plt.show()
요약
이 튜토리얼에서는 Python 의 Matplotlib 을 사용하여 텍스트 화살표가 있는 주석이 달린 산점도를 만드는 방법을 배웠습니다. ax.text() 함수를 사용하여 주석과 텍스트 화살표를 플롯에 추가했으며, ax.set_xlim(), ax.set_ylim(), 그리고 plt.show() 함수를 사용하여 플롯 범위를 설정하고 플롯을 표시했습니다.