플롯의 수명 주기

Beginner

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

소개

이 랩에서는 Matplotlib 을 사용하여 플롯의 생명 주기를 탐구합니다. 원시 데이터로 시작하여 사용자 정의 시각화를 저장하는 것으로 마무리합니다. 플롯을 생성하고, 스타일을 제어하고, 모양을 사용자 정의하고, 여러 시각화를 결합하고, 플롯을 디스크에 저장하는 방법을 배웁니다.

VM 팁

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

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

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

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

필요한 모듈 가져오기

먼저, 필요한 모듈인 Matplotlib 과 NumPy 를 가져와야 합니다.

import matplotlib.pyplot as plt
import numpy as np

데이터 준비

다양한 회사의 판매 정보를 포함하는 샘플 데이터 세트를 사용합니다. 다음은 데이터의 예시입니다.

data = {'Barton LLC': 109438.50,
        'Frami, Hills and Schmidt': 103569.59,
        'Fritsch, Russel and Anderson': 112214.71,
        'Jerde-Hilpert': 112591.43,
        'Keeling LLC': 100934.30,
        'Koepp Ltd': 103660.54,
        'Kulas Inc': 137351.96,
        'Trantow-Barrows': 123381.38,
        'White-Trantow': 135841.99,
        'Will LLC': 104437.60}
group_data = list(data.values())
group_names = list(data.keys())
group_mean = np.mean(group_data)

플롯 생성

판매 데이터를 나타내기 위해 막대 그래프 (barplot) 시각화를 사용합니다. 다음 단계를 따르세요.

  1. plt.subplots()를 사용하여 figure 와 axis 객체를 생성합니다.
fig, ax = plt.subplots()
  1. axis 객체의 barh() 메서드를 사용하여 데이터를 플롯합니다.
ax.barh(group_names, group_data)

플롯 스타일 사용자 정의

시각적으로 더 매력적인 플롯을 만들기 위해 스타일을 변경할 수 있습니다. 다음 단계를 따르세요.

  1. print(plt.style.available)를 사용하여 사용 가능한 스타일 목록을 출력합니다.
print(plt.style.available)
  1. 스타일을 선택하고 plt.style.use(style_name)를 사용하여 적용합니다.
plt.style.use('fivethirtyeight')
  1. 플롯을 다시 표시해 보겠습니다.
fig, ax = plt.subplots()
ax.barh(group_names, group_data)

플롯 모양 사용자 정의

플롯의 모양을 더 사용자 정의할 수 있습니다. 다음 단계를 따르세요.

  1. x 축 레이블을 회전하여 가독성을 높입니다.
labels = ax.get_xticklabels()
plt.setp(labels, rotation=45, horizontalalignment='right')
  1. x 축 및 y 축의 limits, labels, title 을 설정합니다.
ax.set(xlim=[-10000, 140000],
       xlabel='Total Revenue',
       ylabel='Company',
       title='Company Revenue')
  1. 플롯을 다시 표시합니다.
fig, ax = plt.subplots()
ax.barh(group_names, group_data)
labels = ax.get_xticklabels()
plt.setp(labels, rotation=45, horizontalalignment='right')
ax.set(xlim=[-10000, 140000], xlabel='Total Revenue', ylabel='Company',
       title='Company Revenue')

여러 시각화 결합

시각화에 추가적인 플롯 요소를 추가할 수 있습니다. 다음 단계를 따르세요.

  1. 판매 데이터의 평균을 나타내는 수직선을 추가합니다.
ax.axvline(group_mean, ls='--', color='r')
  1. 플롯에 새로운 회사를 주석 처리합니다.
for group in [3, 5, 8]:
    ax.text(145000, group, "New Company", fontsize=10, verticalalignment="center")
  1. 플롯 제목의 위치를 조정합니다.
ax.title.set(y=1.05)
  1. 전체 코드는 아래에 나와 있습니다.
fig, ax = plt.subplots(figsize=(8, 8))
ax.barh(group_names, group_data)
labels = ax.get_xticklabels()
plt.setp(labels, rotation=45, horizontalalignment='right')

## Add a vertical line, here we set the style in the function call
ax.axvline(group_mean, ls='--', color='r')

## Annotate new companies
for group in [3, 5, 8]:
    ax.text(145000, group, "New Company", fontsize=10,
            verticalalignment="center")

## Now we move our title up since it's getting a little cramped
ax.title.set(y=1.05)

ax.set(xlim=[-10000, 140000], xlabel='Total Revenue', ylabel='Company',
       title='Company Revenue')

plt.show()

플롯 저장

마지막으로, 플롯을 디스크에 저장할 수 있습니다. 다음 단계를 따르세요.

  1. print(fig.canvas.get_supported_filetypes())를 사용하여 지원되는 파일 형식을 출력합니다.
print(fig.canvas.get_supported_filetypes())
  1. fig.savefig(file_path, transparent=False, dpi=80, bbox_inches="tight")를 사용하여 그림을 이미지 파일로 저장합니다. 그림을 저장하려면 이 줄의 주석 처리를 해제하세요.
fig.savefig('sales.png', transparent=False, dpi=80, bbox_inches="tight")

왼쪽 사이드바의 파일 탐색기를 사용하여 저장된 이미지 파일을 열 수 있습니다.

요약

이 랩에서는 Matplotlib 을 사용하여 플롯의 수명 주기에 대해 배웠습니다. 플롯을 생성하고, 스타일을 제어하고, 모양을 사용자 정의하고, 여러 시각화를 결합하고, 플롯을 디스크에 저장하는 것으로 시작했습니다. Matplotlib 은 시각적으로 매력적이고 유익한 플롯을 만들기 위한 광범위한 사용자 정의 옵션을 제공합니다.