Matplotlib Pyplot 인터페이스 튜토리얼

Intermediate

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

소개

이 튜토리얼은 Matplotlib 에서 pyplot 인터페이스를 사용하는 방법에 대한 단계별 가이드를 제공합니다. pyplot 모듈은 Matplotlib 을 MATLAB 처럼 작동하게 해주는 함수들의 모음으로, 플롯을 쉽게 생성하고 사용자 정의할 수 있도록 해줍니다. 이 튜토리얼은 Matplotlib 과 그 개념에 대한 기본적인 이해를 가지고 있다고 가정합니다.

VM 팁

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

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

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

이것은 가이드 실험입니다. 학습과 실습을 돕기 위한 단계별 지침을 제공합니다.각 단계를 완료하고 실무 경험을 쌓기 위해 지침을 주의 깊게 따르세요. 과거 데이터에 따르면, 이것은 중급 레벨의 실험이며 완료율은 78%입니다.학습자들로부터 97%의 긍정적인 리뷰율을 받았습니다.

간단한 플롯 생성

시작하기 위해, pyplotplot 함수를 사용하여 간단한 플롯을 생성해 보겠습니다. 이 예제에서는 y 값 [1, 2, 3, 4]를 가진 선 그래프를 플롯합니다.

import matplotlib.pyplot as plt

plt.plot([1, 2, 3, 4])
plt.ylabel('some numbers')
plt.show()

설명:

  • matplotlib에서 pyplot 모듈을 가져와 plt로 별칭을 지정합니다.
  • plot 함수는 선 그래프를 생성하는 데 사용됩니다. y 값의 단일 리스트를 제공하면, Python 범위가 0 부터 시작하므로 x 값은 자동으로 [0, 1, 2, 3]으로 생성됩니다.
  • ylabel 함수는 y 축의 레이블을 설정합니다.
  • 마지막으로, show 함수는 플롯을 표시합니다.

플롯 스타일 서식 지정

다음으로, 플롯의 스타일을 사용자 정의해 보겠습니다. plot 함수의 선택적 세 번째 인수를 사용하여 플롯의 색상과 선 유형을 나타내는 형식 문자열 (format string) 을 지정할 수 있습니다. 예를 들어, 동일한 선 그래프를 빨간색 원으로 플롯해 보겠습니다.

plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro')
plt.axis([0, 6, 0, 20])
plt.show()

설명:

  • 형식 문자열 'ro'를 사용하여 플롯에 빨간색 원을 지정합니다.
  • axis 함수는 축의 뷰포트 (viewport) 를 설정하는 데 사용되며, x 축과 y 축의 값 범위를 지정합니다.

여러 개의 선 플롯

배열을 사용하여 하나의 함수 호출에서 서로 다른 스타일의 여러 선을 플롯할 수도 있습니다. 세 개의 선을 플롯해 보겠습니다: 점선 빨간색 선, 파란색 사각형, 녹색 삼각형:

import numpy as np

t = np.arange(0., 5., 0.2)

plt.plot(t, t, 'r--', t, t**2, 'bs', t, t**3, 'g^')
plt.show()

설명:

  • numpy 모듈을 사용하여 균등하게 샘플링된 시간 값으로 배열 t를 생성합니다.
  • plot 함수는 세 쌍의 xy 값과 형식 문자열 'r--' (점선 빨간색 선), 'bs' (파란색 사각형), 및 'g^' (녹색 삼각형) 과 함께 호출됩니다.

범주형 변수를 사용한 플롯

Matplotlib 을 사용하면 범주형 변수를 사용하여 플롯을 생성할 수 있습니다. 범주형 변수를 사용하여 막대 그래프, 산점도, 선 그래프를 만들어 보겠습니다.

names = ['group_a', 'group_b', 'group_c']
values = [1, 10, 100]

plt.figure(figsize=(9, 3))

plt.subplot(131)
plt.bar(names, values)
plt.subplot(132)
plt.scatter(names, values)
plt.subplot(133)
plt.plot(names, values)

plt.suptitle('Categorical Plotting')
plt.show()

설명:

  • 세 개의 범주형 값을 가진 리스트 names와 해당 값을 나타내는 리스트 values를 생성합니다.
  • figure 함수는 지정된 크기의 새 figure 를 생성하기 위해 호출됩니다.
  • subplot 함수를 사용하여 서브플롯 (subplot) 의 그리드를 생성합니다. 이 예제에서는 막대 그래프, 산점도, 선 그래프와 같이 각기 다른 유형의 플롯을 가진 세 개의 서브플롯을 생성합니다.
  • suptitle 함수는 figure 의 상위 제목을 설정하는 데 사용됩니다.

선 속성 사용자 정의

Matplotlib 을 사용하면 선 너비, 대시 스타일, 색상과 같은 다양한 선 속성을 사용자 정의할 수 있습니다. 선 속성을 설정하는 몇 가지 방법을 시연해 보겠습니다.

x = np.arange(0, 5, 0.1)
line, = plt.plot(x, np.sin(x), '-')

## Using the Line2D instance's setter method
line.set_linewidth(2.0)  ## Set the linewidth property of the line to 2.0

## Using the pyplot.setp function
plt.setp(line, color='r', linewidth=2.0)  ## Set the color and linewidth properties using the setp function

plt.show()

설명:

  • 배열 x를 생성하고 np.sin 함수를 사용하여 해당 y 값을 계산합니다.
  • plot 함수는 선 그래프를 생성하기 위해 호출됩니다.
  • Line2D 인스턴스의 set 메서드를 사용하여 선의 선 너비 속성을 2.0 으로 설정합니다.
  • 또는, setp 함수를 사용하여 키워드 인수를 통해 색상 및 선 너비와 같은 선의 여러 속성을 설정할 수 있습니다.

요약

이 튜토리얼에서는 Matplotlib 의 pyplot 인터페이스를 사용하여 플롯을 생성하고 사용자 정의하는 방법을 배웠습니다. 간단한 플롯 생성, 플롯 스타일 서식 지정, 여러 선 플롯, 범주형 변수 사용, 선 속성 사용자 정의를 다루었습니다. 이러한 기능을 활용하여 데이터를 효과적으로 시각화하기 위한 다양한 유형의 플롯을 만들 수 있습니다.