ggplot 스타일로 Matplotlib 플로팅

Beginner

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

소개

Matplotlib 는 Python 프로그래밍 언어와 수치 수학 확장 NumPy 를 위한 플로팅 라이브러리입니다. 이 튜토리얼은 Matplotlib 에서 ggplot 스타일 시트를 사용하여 플롯을 생성하는 과정을 안내합니다.

VM 팁

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

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

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

라이브러리 임포트 및 스타일 시트 설정

먼저, 필요한 라이브러리를 임포트하고 ggplot 스타일 시트를 설정해야 합니다.

import matplotlib.pyplot as plt
import numpy as np

plt.style.use('ggplot')

산점도 생성

무작위 데이터 포인트를 사용하여 산점도를 생성합니다.

## 재현성을 위해 무작위 상태 고정
np.random.seed(19680801)

## 무작위 데이터 포인트 생성
x, y = np.random.normal(size=(2, 200))

## 산점도 생성
plt.plot(x, y, 'o')
plt.show()

사인 곡선 생성

기본 색상 순환 (color cycle) 에서 색상을 사용하여 사인 곡선을 생성합니다.

## 사인 곡선 생성
L = 2*np.pi
x = np.linspace(0, L)
ncolors = len(plt.rcParams['axes.prop_cycle'])
shift = np.linspace(0, L, ncolors, endpoint=False)

for s in shift:
    plt.plot(x, np.sin(x + s), '-')
plt.margins(0)
plt.show()

막대 그래프 생성

무작위 데이터 포인트를 사용하여 막대 그래프를 생성합니다.

## 막대 그래프 생성
x = np.arange(5)
y1, y2 = np.random.randint(1, 25, size=(2, 5))
width = 0.25

plt.bar(x, y1, width)
plt.bar(x + width, y2, width, color=list(plt.rcParams['axes.prop_cycle'])[2]['color'])
plt.xticks(x + width, labels=['a', 'b', 'c', 'd', 'e'])
plt.show()

원 생성

기본 색상 순환 (color cycle) 에서 색상을 사용하여 원을 생성합니다.

## 원 생성
fig, ax = plt.subplots()
for i, color in enumerate(plt.rcParams['axes.prop_cycle']):
    xy = np.random.normal(size=2)
    ax.add_patch(plt.Circle(xy, radius=0.3, color=color['color']))
ax.axis('equal')
ax.margins(0)
plt.show()

요약

이 튜토리얼에서는 Matplotlib 에서 ggplot 스타일 시트를 사용하여 플롯을 생성하는 방법을 배웠습니다. 산점도 (scatter plot), 사인 곡선 (sinusoidal lines), 막대 그래프 (bar graphs) 및 기본 색상 순환 (color cycle) 에서 색상을 사용한 원을 생성했습니다. Matplotlib 는 Python 에서 시각화를 생성하기 위한 강력한 도구입니다.