Matplotlib는 matlab 수치해석 프로그램을 python 기반 작업공간에서 다양한 작업을 하기 위해 개발된 외부 라이브러리다. 이 라이브러리에서 그래프를 그리는 방식은 크게 2종류가 있는데, 간편하게 사용할 수 있는 pyplot가 첫번째다. 두번째 방식은 객체지향형 모듈에 좀 복잡한 객체 생성을 거쳐야하지만 다양한 설정 및 한 그래프 공간에 여러 축을 표현할 수 있는 pyplot.subplots가 있다.
data2 = np.genfromtxt(f2, encoding='utf8',dtype=None,delimiter=',',names=('year','value'), skip_header=5) ## 변수 / 인코딩 / 혼합 데이터 : dtype=None / 값 사이 구분 / 열 이름 지정 / 머릿말 생략 열 수
size=len(data2)
print(size)
for i inrange(0,size): t = data2['year'][i] ## year 열의 i번째 값을 t에 저장 if t == 1900: styr = i elif t == 2015: edyr = i i=i+1 print(styr) print(edyr)
lines = line1 + line2 ## 두 장의 line 그림을 합친 변수 labels = [l.get_label() for l in lines] ax1.legend(lines, labels, loc='upper left') ## loc 'location' ## matplotlin.axes.Axes.legend 참고
plt.show
<IPython.core.display.Javascript object>
<function matplotlib.pyplot.show(block=None)>
1
plt.close()
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
fig, ax1 = plt.subplots() ax2 = ax1.twinx()
ax1.set_ylabel('GMST anomaly (C)') ax1.set_xlabel('Year') ax2.set_ylabel('CO₂(ppm)') ax1.set_ylim([-0.46,0.72]) ## 범위 조정 ax2.set_ylim([280,390]) ## ax1.set_xlim([1900,2014])
파이썬에서 기본적으로 제공하는 List 형식의 행은 사용할 수 있으나 Math 라이브러리가 추가해주는 method 및 상수는 기본적인 식과 pi 등의 상수 뿐으로 다차원 연산으로 인해 행렬이 필요한 vector나 선형대수 등의 작업 형식에 대해선 복잡해지는 불편함이 있다.
외부 라이브러리 Numpy
위 문제를 해결해주는 라이브러리가 C언어 기반으로 만들어진 Numpy 외부 라이브러리로 작업 공간에서 행렬 형식의 변수를 사용할 수 있게 도와준다.