본문 바로가기

Packages = Matplotlib 본문

파이썬/파이썬 기본

Packages = Matplotlib

jaegomhoji 2022. 2. 23. 01:26

************************************************************************************************************

INDEX

** 매트플롯라이브러리란 ?

** matplotlib 예시

** 그래프 옵션들 총 정리 

** np.polyfit() , np.poly1d() , np.linspace()로 그래프에 1차 직선 그리기 

** 그래프에 경향(식)과의 오차 표시하기 

************************************************************************************************************

 

** 매트플롯라이브러리란 ?

> 파이썬의 대표 시각화 도구

 

> matplot lib의 alias는 plt 로 많이 사용한다 

import matplotlib.pyplot as plt

 

> jupyter notebook 사용시에는 matplotlib 결과(그래프가)가 out session에 나타나는 것이 유리하므로 

> %matplotlib inline 옵션을 사용한다 , 인라인 옵션을 지정하면 결과가 창에 표시된다는 의미이다. 

> 본인이 운용하는 프로그램과 OS에 맞게 한글 대응 코드를 가지고 있자 

> 그래프 font 지정은 matplotlib의 rc함수로 family="font 명"을 기본으로 지정해준다.

> 그때 그때 다르게 지정해서 그릴 수 있다.

 

 

get_ipython().run_line_magic("matplotlib","inline")

++++ 복붙용 옵션 초기화 코드 +++++ 

 

import matplotlib.pyplot as plt 
from matplotlib import rc

 

plt.rcParams["axes.unicode_minus"] = False # 마이너스 부호 떄문에 한글이 깨질 수 있어 설정해준다
rc("font", family="Arial Unicode MS") 

get_ipython().run_line_magic("matplotlib","inline")

 

** 색상표에 사용자 정의 색 추가하기

> from matplotlib.colors import ListedColormap 

color_step=["#colorcode"]

my_cmap = ListedColormap(color_step) 

 

> 원하는 색상을 검색해서 코드 값을 알아오자 

> 이후 cmap=my_cmap 으로 인자를 전달하면 된다 

 

 

** 기본적인 파라미터들 

> plt.figure 에서 현재 그래프 크기 옵션에 대한 인자를 전달했고 [x축=5, y축=5]의 크기로 설정했다

> plt.plot에서는 ([순서별로 들어가는 데이터],[그 순서에 해당하는 값])

> plt.show()로 그래프 그리기(출력)

> 그래프 관련 기본 옵션을 이해하고, 인터넷에 잘 정리되어 있는 다른 자료들 보면서 설정하면 된다.

 

** numpy로 그래프 그리기, 관련 인자들과 옵션들 예시 1

 

** numpy로 그래프 그리기, 관련 인자들과 옵션들 예시 2

** numpy로 그래프 그리기, 관련 인자들과 옵션들 예시 3

 

** numpy로 그래프 그리기, 관련 인자들과 옵션들 예시 4

 

 

************************************************************************************************************

** 그래프 옵션 총 정리 

* 그래프 인자는 플롯팅 치트시트 + shift tab으로 독스트링 확인해서 그리는게 제일 빠름 

 

plt.figure(figsize=(x축,y축)) : x축과 y축 크기 지정 

plt.plot() : 그래프를 그리는 옵션, 세부 항목은 아래 

 

plt.plot(x,y,label="label name") : x축 데이터, y축 데이터, 데이터 라벨 순으로 입력 

plt.plot(x,y,label="label name") : Plt.plot(다른 옵션)으로 여러개를 그릴 수 있음

 

plt.plot(x,

y,

label="label name",

color="", # 선의 컬러 지정

linestyle="dashed", # 선의 모양 지정 

linewidth=3 # lw=~로 쓰며 선의 굵기 width를 지정  

marker="r--/bs/g^", #  그래프 마커(점)의 모양 옵션  

markerfacecolor="", # 그래프 마커 색 지정 

markersize="", # 마커 사이즈 설정 

 

plt.text(텍스트 표시할 위치의x축 * 1.00 +, y축 * 0.97 - ,텍스트로 출력할 이름이나 값, fontsize=n )  * 1.00 + 우측 , 1.00- 좌측 위치 

c=colormap ( 데이터 별로 색상으로 분류하고 싶은 자료를 지정해야 한다. colormap = data ) 

plt.colorbar() # 그래프 우측에 컬러바 표시 

 

plt.grid() : 그리드, 그래프의 격자 관련 옵션 # default = True 격자 표시, False는 해제 

 

plt.legend(loc="upper right") : 그래프의 범례 표현 옵션, 플롯에 각기 적지 않았을 때 여기 적으면 표시 , 위치 지정 가능 

plt.xlabel("xlabel") : x축 범례는 ~. 

plt.ylabel("ylabel")  

plt.title("input title" ) : 그래프 제목은 

 

plt.xlim([-0.5, 6.5]) # x축의 범위 설정 

plt.ylim([1,5])

plt.show() : 그래프 출력

 

plt.scatter(x,y,s="50", # 점의 개수 지정 ) 

************************************************************************************************************

 

** np.polyfit() , np.poly1d() , np.linspace()로 그래프에 1차 직선 그리기 

* fit = np.polyfit(x,y,1) -> "1"차식으로 직선을 구성하기 위한 계수를 계산한다 

* formula = np.poly1d(fit) -> 계산한 계수를 가지고 함수로 만들어준다 

* formula(value) 를 통해서, x값을 대입하면 직선에서 상응하는 y값을 알 수 있다 

* fx=np.linspace(시작점,도착점,간격) 을 통해서 경향선을 그리기 위해 위 함수의 직선상의 값들을 생성한다

* 실습 결과 

 

** 그래프에 경향( trend )과의  오차 표시하기 

* 경향과의 오차 만들기

 

* 오차가 많이 나는 자료들 분류하기 ( top5, low5 ) 

 

 

* 해당 자료 표시하기 

'파이썬 > 파이썬 기본' 카테고리의 다른 글

pip 설치 / module 직접 설치하기  (0) 2022.02.23
Pandas - .pivot_table  (0) 2022.02.23
Packages - Pandas  (0) 2022.02.22
예외, 예외처리 방법들  (0) 2022.02.03
텍스트 파일 다루기  (0) 2022.02.03
Comments