Matplotlib 로 이벤트 플롯 만들기

Beginner

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

소개

이 랩에서는 Matplotlib 을 사용하여 이벤트 플롯을 만드는 방법을 배웁니다. 이벤트 플롯은 시간 경과에 따른 이벤트 발생을 보여주는 방법입니다. 이벤트는 선 또는 점으로 표현될 수 있습니다. 이 랩에서는 다양한 선 속성을 가진 수평 및 수직 이벤트 플롯을 만드는 과정을 안내합니다.

VM 팁

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

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

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

라이브러리 임포트 및 랜덤 시드 설정

재현성을 위해 필요한 라이브러리를 임포트하고 랜덤 시드를 설정하는 것으로 시작합니다.

import matplotlib.pyplot as plt
import numpy as np

import matplotlib

matplotlib.rcParams['font.size'] = 8.0

## Fixing random state for reproducibility
np.random.seed(19680801)

랜덤 데이터 생성

다음으로, 이벤트 플롯에 사용할 몇 가지 랜덤 데이터를 생성합니다.

data1 = np.random.random([6, 50])

첫 번째 이벤트 플롯의 색상 및 선 속성 설정

첫 번째 이벤트 플롯에서 각 위치 집합에 대해 서로 다른 색상과 선 속성을 설정합니다.

colors1 = [f'C{i}' for i in range(6)]

lineoffsets1 = [-15, -3, 1, 1.5, 6, 10]
linelengths1 = [5, 2, 1, 1, 3, 1.5]

첫 번째 이벤트 플롯 생성 - 수평 방향

첫 번째 이벤트 플롯을 수평 방향으로 생성합니다.

fig, axs = plt.subplots(2, 2)

axs[0, 0].eventplot(data1, colors=colors1, lineoffsets=lineoffsets1,
                    linelengths=linelengths1)

첫 번째 이벤트 플롯 생성 - 수직 방향

첫 번째 이벤트 플롯을 수직 방향으로 생성합니다.

axs[1, 0].eventplot(data1, colors=colors1, lineoffsets=lineoffsets1,
                    linelengths=linelengths1, orientation='vertical')

두 번째 이벤트 플롯을 위한 랜덤 데이터 생성

두 번째 이벤트 플롯을 위해 다른 랜덤 데이터 세트를 생성합니다. 미적인 목적을 위해 감마 분포 (gamma distribution) 를 사용합니다.

data2 = np.random.gamma(4, size=[60, 50])

두 번째 이벤트 플롯의 선 속성 설정

두 번째 이벤트 플롯에서 선 속성 (line properties) 에 대한 개별 값을 사용합니다. 이 값들은 각 데이터 세트 간의 증가분을 설정하는 lineoffsets2 를 제외한 모든 데이터 세트에 사용됩니다.

colors2 = 'black'
lineoffsets2 = 1
linelengths2 = 1

두 번째 이벤트 플롯 생성 - 수평 방향

두 번째 이벤트 플롯을 수평 방향으로 생성합니다.

axs[0, 1].eventplot(data2, colors=colors2, lineoffsets=lineoffsets2,
                    linelengths=linelengths2)

두 번째 이벤트 플롯 생성 - 수직 방향

두 번째 이벤트 플롯을 수직 방향으로 생성합니다.

axs[1, 1].eventplot(data2, colors=colors2, lineoffsets=lineoffsets2,
                    linelengths=linelengths2, orientation='vertical')

이벤트 플롯 표시

plt.show()를 사용하여 이벤트 플롯을 표시합니다.

plt.show()

요약

이 랩에서는 Matplotlib 에서 이벤트 플롯을 생성하는 방법을 배웠습니다. 다양한 선 속성을 가진 수평 및 수직 이벤트 플롯을 생성하는 방법을 배웠습니다. 단계별 가이드를 따르면 데이터를 위한 자신만의 이벤트 플롯을 쉽게 생성할 수 있습니다.