티스토리 뷰
시각화는 예시가 중요할 것 같아서 예시 중심으로 작성을 할 예정이다.
0. 패키지 설치하기
python -m pip install -U pip
python -m pip install -U matplotlib
1. 라이브러리 로드하기
import pandas as pd
import matplotlib.pyplot as plt
-파일을 불러올 때 사용할 pandas와 시각화를 할 matplotlib 로드.
2. 한글폰트 설치하기
# 한글폰트 사용을 위해 설치
!pip install koreanize-matplotlib
import koreanize_matplotlib
-그래프 제목, 범주 등에 한글을 사용하기 위해 한글 설치 및 로드
3. 기본 그래프 그려보기
plt.plot([1, 2, 3, 4])
-리스트의 값들이 y값들이라고 가정하고, x값 [0, 1, 2, 3]을 자동으로 만들어냄.
plt.plot([1, 2, 3, 4], [1, 4, 9, 16])
-plt.plot([1, 2, 3, 4], [2, 4, 6, 8])과 같이 두 개의 리스트를 입력하면 순서대로 x, y값으로 인식함.
data_dict = {'data_x': [1, 2, 3, 4, 5], 'data_y': [2, 3, 5, 10, 8]}
plt.plot('data_x', 'data_y', data=data_dict)
-레이블이 있는 데이터를 사용해 그래프를 그릴 수도 있음.
4. 축의 범위 지정하기 : axis
plt.plot([1, 2, 3, 4], [1, 4, 9, 16])
plt.axis([0, 5, 0, 20])
5. 여러 개의 그래프 그리기 : numpy.arange
import numpy as np
# 200ms 간격으로 균일하게 샘플된 시간
t = np.arange(0., 5., 0.2)
# 빨간 대쉬, 파란 사각형, 녹색 삼각형
plt.plot(t, t, 'r--', t, t**2, 'bs', t, t**3, 'g^')
6. 축 건드리기 (레이블 설정, 범위 등)
plt.plot([1, 2, 3, 4], [2, 3, 5, 10])
plt.xlabel('X-Axis', loc='right', labelpad=15)
plt.ylabel('Y-Axis', loc='top', labelpad=20)
plt.xlim([0, 5]) # X축의 범위: [xmin, xmax]
plt.ylim([0, 20]) # Y축의 범위: [ymin, ymax]
plt.axis([0, 5, 0, 20])
-xlabel과 ylabel로 레이블 이름을 설정할 수 있다.
-loc으로 label의 위치를 설정할 수 있다.
-labelpad로는 여백을 지정할 수 있다.
-xlim, ylim으로 각 축의 범위를 지정할 수 있다.
7. 막대 그래프 그리기
import matplotlib.pyplot as plt
import numpy as np
x = np.arange(3)
years = ['2018', '2019', '2020']
values = [100, 400, 900]
plt.bar(x, values)
plt.xticks(x, years)
-np.agrange() : 주어진 범위와 간격에 따라 균일한 값을 갖는 어레이를 반환.
-xticks(x, years) : x축 눈금 레이블에 years가 순서대로 표시됨.
plt.barh(y, values)
plt.yticks(y, years)
-barh()로 바꾸고 y값을 넣으면 수평 막대그래프가 된다.
8. 파이차트 그리기
import matplotlib.pyplot as plt
ratio = [34, 32, 16, 18]
labels = ['Apple', 'Banana', 'Melon', 'Grapes']
explode = [0, 0.10, 0, 0.10]
wedgeprops={'width': 0.7, 'edgecolor': 'w', 'linewidth': 5}
plt.pie(ratio, labels=labels, autopct='%.1f%%', startangle=260, counterclock=False, explode=explode, wedgeprops=wedgeprops)
-ratio : 비율값
-autopct: 안에 표시될 숫자의 형식 지정
-startangle: 부채꼴이 그려지는 시작 각도 설정
-counterclock=False: 시계방향 순서로 영역 표시
-explode: 중심에서 벗어나는 정도
9. 여러 개의 그래프 그리기 ★★★★★
-이 부분은 더 많은 예제와 연습이 필요..ㅠㅠㅠㅠ모르겠다
'TIL & WIL > Python' 카테고리의 다른 글
8주차 화요일 TIL. sns.heatmap / melt / 정규표현식 (0) | 2023.02.07 |
---|---|
8주차 월요일 TIL. (0) | 2023.02.06 |
7주차 화요일 TIL. plot() / crosstab() / loc[] / str.contains / isin / pivot_table / groupby / merge (0) | 2023.01.31 |
7주차 월요일 TIL. 시각화 해보기 (0) | 2023.01.30 |
7주차 월요일 TIL. 시각화 설정 / 파일목록보기 / 중복제거 / 유일값 / 인덱스 설정 (0) | 2023.01.30 |