[시각화] .plot() 사용법

Ethan·2022년 5월 23일
0
post-custom-banner

plt.plot()

  • 일반적으로 figure() 객체를 생성하고 add_subplot() 메소드를 사용해 그래프를 그리지만, 두 가지를 생략하고 바로 plt.plot() 기능을 활용하면 가장 최근의 figure 객체와 서브플롯을 그릴 수 있다.
import numpy as np
import matplotlib.pyplot as plt

#0에서 10까지 균등한 간격으로  100개의 숫자를 생성
x = np.linspace(0, 10, 100)

plt.plot(x, np.sin(x),'o')
plt.plot(x, np.cos(x),'--', color='black') 
plt.show()

  • 물론 add.subplot()을 활용해 서브플롯을 추가할 수도 있다.
x = np.linspace(0, 10, 100) 

plt.subplot(2,1,1)
plt.plot(x, np.sin(x),'orange','o')

plt.subplot(2,1,2)
plt.plot(x, np.cos(x), 'orange') 
plt.show()


linestyle, marker

  • linestyle, marker 옵션을 활용하면 그래프에 다양한 스타일을 적용할 수 있다.
x = np.linspace(0, 10, 100) 

plt.plot(x, x + 0, linestyle='solid') 
plt.plot(x, x + 1, linestyle='dashed') 
plt.plot(x, x + 2, linestyle='dashdot') 
plt.plot(x, x + 3, linestyle='dotted')
plt.plot(x, x + 0, '-g') # solid green 
plt.plot(x, x + 1, '--c') # dashed cyan 
plt.plot(x, x + 2, '-.k') # dashdot black 
plt.plot(x, x + 3, ':r'); # dotted red
plt.plot(x, x + 4, linestyle='-') # solid 
plt.plot(x, x + 5, linestyle='--') # dashed 
plt.plot(x, x + 6, linestyle='-.') # dashdot 
plt.plot(x, x + 7, linestyle=':'); # dotted


pandas.plot() 파라미터

패러미터내용
label그래프의 범례 이름
ax그래프를 그릴 matplotlib의 서브플롯 객체
stylematplotlib에 전달할 'ko--'같은 스타일의 문자열
alpha투명도 (0~1)
kind그래프의 종류 (line, bar, barh, kde)
logyY축에 대한 로그 스케일
use_index객체의 색인을 눈금 이름으로 사용할 지의 여부
rot눈금 이름을 로테이션(0 ~ 360)
xticks, yticksx축, y축으로 사용할 값
xlim, ylimx축, y축 한계
grid축의 그리드를 표시할 지의 여부

DataFrame.plot() 파라미터

패러미터내용
subplots각 DataFrame의 칼럼을 독립된 서브플롯에 그리기
sharexsubplots=True 면 같은 X 축을 공유하고 눈금과 한계를 연결
shareysubplots=True 면 같은 Y 축을 공유
figsize그래프의 크기 (튜플로 지정)
title그래프의 제목을 문자열로 지정
sort_columns칼럼을 알파벳 순서로 그리기

# 예시 코드 (막대 그래프)
import pandas as pd

fig, axes = plt.subplots(2, 1)
data = pd.Series(np.random.rand(5), index=list('abcde'))
data.plot(kind='bar', ax=axes[0], color='blue', alpha=1)
data.plot(kind='barh', ax=axes[1], color='red', alpha=0.3)

# 예시 코드 (선 그래프)
df = pd.DataFrame(np.random.rand(3,4), columns=pd.Index(['A','B','C','D']))
df.plot(kind='line')

profile
재미있게 살고 싶은 대학원생
post-custom-banner

0개의 댓글