plot()메소드를 통해 여러개의 그래프를 미리 만들어두고 plt.show()메소드를 사용하면 여러개의 그래프가 한 도면에 그려지는 것을 확인 할 수 있습니다. 또는 plot()메소드 안에 여러개의 그래프 형식을 넣을 수 있습니다.
import numpy as np
t = np.arange(0,5,0.2)
plt.plot(t,t,'r--',t,t**2,'gs', t,t**3,'*')
plt.show()
import numpy as np
t = np.arange(0,5,0.2)
plt.plot(t,t,'r--',label='Tips')
plt.plot(t,t**2,'gs',label='Population')
plt.plot(t,t**3,'b^', label='Product Layer')
plt.legend()
plt.xlabel('Contents')
plt.ylabel('Count', rotation=0)
plt.show()
리스트 뿐만 아니라 numpy Array, Series도 들어갈 수 있습니다.
plt.plot(np.random.randint(0,10,10), np.random.randint(0,10,10), 'ro')
plt.plot(np.random.randint(0,50,20), np.random.randint(0,50,20), 'g*')
plt.plot(Series(np.random.randint(20,60,20)), Series(np.random.randint(20,60,20)), 'm^')
plt.show()
여러 타입이 x, y인자값으로 들어갈 수 있기 때문에 아래와 같이 만들 수도 있습니다.
t = np.arange(0,12,0.01)
plt.plot(t, np.cos(t), 'r')
plt.plot(t, np.sin(t), 'c')
plt.plot(t, np.cos(t)*np.sin(t), 'g')
plt.xlabel('x axis')
plt.ylabel('y axis')
plt.title('SinCos graph')
plt.show()
새로운 그래프를 추가하려면 figure()메소드를 사용합니다.
figure()메소드를 기준으로 plot()메소드를 다른 도표에 적용할 수 있습니다.
import numpy as np
import matplotlib.pyplot as plt
from pandas import DataFrame, Series
t = np.arange(0,12,0.01)
plt.figure(figsize=(8,5))
plt.plot(t, np.sin(t), 'r', lw=5, label='sin')
plt.plot(t, np.cos(t), 'b', label='cos')
plt.legend()
plt.xlabel('x axis')
plt.ylabel('y axis')
plt.title('SinCos Graph')
plt.figure(figsize=(8,5))
plt.plot(np.random.randint(0,10,10), np.random.randint(0,10,10), 'ro', label='red')
plt.plot(np.random.randint(0,50,20), np.random.randint(0,50,20), 'g*', label='green')
plt.plot(Series(np.random.randint(20,60,20)), Series(np.random.randint(20,60,20)), 'm^', label='magenta')
plt.legend()
plt.xlabel('x axis')
plt.ylabel('y axis')
plt.title('Random Graph')
plt.show()
마지막으로 DataFrame으로 시각화 작업을 해보도록 하겠습니다.
import numpy as np
from pandas import DataFrame
np.random.seed(100)
data = dict(a=np.arange(0,50,1), c=np.random.randint(0,50,50), d=np.random.randn(50))
data['b'] = data['a']+10 *np.random.randn(50)
data['d'] = np.abs(data['d'])*100
df1 = DataFrame(data)
df1.head()
DataFrame의 각 열을 추출해서 x,y에 넣는 방법이 있습니다.
plt.plot(df1['a'], df1['b'], 'o')
plt.show()
DataFrame객체를 넣는다면 전체 컬럼의 데이터가 각각 다른 색으로 찍힙니다.
plt.plot(df1)
plt.show()
DataFrame을 그리는 방법 중에서 가장 많이 쓰이는 것은 DataFrame객체에서 plotAccessor를 plot()함수로 불러오는 것입니다.
df1.plot(kind='scatter', x='a', y='b', color='r')
plt.show()
Make plots of Series or DataFrame.
df.plot(*args, **kwargs)
Series나 DataFrame의 plot을 만다는 함수라고 정의되어있습니다.
df1.plot(kind='bar', x='a', y='b', color='r', grid=True, legend=True, rot = 0, figsize=(12,4))
plt.show()