Matplotlib 무한대 선 시각화

Beginner

This tutorial is from open-source community. Access the source code

소개

Matplotlib 는 데이터 분석을 위한 시각화를 생성하는 데 사용되는 Python 라이브러리입니다. 이 튜토리얼에서는 Matplotlib 에서 무한 선을 그리는 데 axvline, axhline, 그리고 axline을 사용하는 방법을 배웁니다.

VM 팁

VM 시작이 완료되면, 왼쪽 상단 모서리를 클릭하여 Notebook 탭으로 전환하여 실습을 위해 Jupyter Notebook에 접근하십시오.

때로는 Jupyter Notebook 이 로딩을 완료하는 데 몇 초 정도 기다려야 할 수 있습니다. Jupyter Notebook 의 제한으로 인해 작업의 유효성 검사는 자동화될 수 없습니다.

학습 중에 문제가 발생하면 Labby 에게 문의하십시오. 세션 후 피드백을 제공해주시면 문제를 신속하게 해결해 드리겠습니다.

수직 및 수평선 그리기

axvlineaxhline을 사용하여 각각 수직선과 수평선을 그릴 수 있습니다. y=0, y=0.5, 그리고 y=1.0에서 세 개의 수평선을 그려보겠습니다.

import matplotlib.pyplot as plt
import numpy as np

## Generate data
t = np.linspace(-10, 10, 100)
sig = 1 / (1 + np.exp(-t))

## Draw horizontal lines
plt.axhline(y=0, color="black", linestyle="--")
plt.axhline(y=0.5, color="black", linestyle=":")
plt.axhline(y=1.0, color="black", linestyle="--")

## Plot sigmoid function
plt.plot(t, sig, linewidth=2, label=r"$\sigma(t) = \frac{1}{1 + e^{-t}}$")
plt.xlim(-10, 10)
plt.xlabel("t")
plt.legend(fontsize=14)
plt.show()

수직선 그리기

axvline을 사용하여 주어진 x 위치에 수직선을 그릴 수 있습니다. x=0에서 수직선을 그려보겠습니다.

import matplotlib.pyplot as plt
import numpy as np

## Generate data
t = np.linspace(-10, 10, 100)
sig = 1 / (1 + np.exp(-t))

## Draw horizontal lines
plt.axhline(y=0, color="black", linestyle="--")
plt.axhline(y=0.5, color="black", linestyle=":")
plt.axhline(y=1.0, color="black", linestyle="--")

## Draw vertical line
plt.axvline(color="grey")

## Plot sigmoid function
plt.plot(t, sig, linewidth=2, label=r"$\sigma(t) = \frac{1}{1 + e^{-t}}$")
plt.xlim(-10, 10)
plt.xlabel("t")
plt.legend(fontsize=14)
plt.show()

임의의 선 그리기

axline을 사용하여 임의의 방향으로 선을 그릴 수 있습니다. 기울기 (slope) 가 0.25이고 점 (0, 0.5)를 지나는 선을 그려보겠습니다.

import matplotlib.pyplot as plt
import numpy as np

## Generate data
t = np.linspace(-10, 10, 100)
sig = 1 / (1 + np.exp(-t))

## Draw horizontal lines
plt.axhline(y=0, color="black", linestyle="--")
plt.axhline(y=0.5, color="black", linestyle=":")
plt.axhline(y=1.0, color="black", linestyle="--")

## Draw vertical line
plt.axvline(color="grey")

## Draw arbitrary line
plt.axline((0, 0.5), slope=0.25, color="black", linestyle=(0, (5, 5)))

## Plot sigmoid function
plt.plot(t, sig, linewidth=2, label=r"$\sigma(t) = \frac{1}{1 + e^{-t}}$")
plt.xlim(-10, 10)
plt.xlabel("t")
plt.legend(fontsize=14)
plt.show()

대각선 그리기

transform 매개변수를 사용하여 axline으로 고정된 기울기를 가진 대각선을 그릴 수 있습니다. 기울기가 0.5로 고정된 대각선 격자선을 그려보겠습니다.

import matplotlib.pyplot as plt
import numpy as np

## Draw diagonal lines
for pos in np.linspace(-2, 1, 10):
    plt.axline((pos, 0), slope=0.5, color='k', transform=plt.gca().transAxes)

plt.ylim([0, 1])
plt.xlim([0, 1])
plt.show()

요약

이 튜토리얼에서는 axvline, axhline, 그리고 axline을 사용하여 Matplotlib 에서 무한대 선을 그리는 방법을 배웠습니다. 수직선과 수평선, 임의의 선, 그리고 고정된 기울기를 가진 대각선을 그리는 방법을 배웠습니다. 이러한 함수는 특별한 데이터 값을 표시하거나 데이터 분석을 돕기 위한 격자선을 그리는 데 유용합니다.