본문 바로가기
Python/matplotlib

[matplotlib] pseudocolor plot: pcolor

by ds31x 2024. 1. 22.

Matplotlib 에서 pcolor pseudocolor (=false color)로 그린 plot 으로

  • 2차원의 x, y의 좌표가 독립변수가 되고,
  • 해당 독립변수에 의해 결정된 함수값(=종속변수) z
  • pseudocolor 를 할당하여 표시하는 plot 임.

bivariate function
(or two-variable single valued function) 을
graph로 표시하는데 사용됨.

 

imshow 와 매우 유사한데,

matplotlib에서 imshow

2차원의 독립변수에 의해 결정된 함수값을

행과 열로 구성된 matrix z로 구성하여 이것만을 입력받아 그리는 방식이기 때문에,

 

x,y,z를 모두 matrix로 입력받는 pcolor 와는 차이가 있음.


parameters

  • cmap: 종속변수에 pseudocolor를 할당하는 규칙. matplotlib.cm 모듈 predfined colormap을 사용함.
  • vmax: 표시되는 종속변수 z의 최대값.
  • vmin: 표시되는 종속변수 z의 최소값.
  • norm: vmaxvmin을 통해 다음으로 얻어진 객체 n를 할당하여 같은 효과를 냄. n=matplotlib.colors.Normalize(vmin, vmax)

Colorbar

pcolor 를 그릴 때, 종속변수 z의 값에 할당된 color 를 확인할 수 있도록 그려지는 bar를 의미함.

plt.colorbar 함수로 그려짐.

관련 parameters 는 다음과 같음.

  • plot:
    • 1st positional argument가 할당됨.
    • colorbar 와 연관된 plot을 가르킴.
    • colorbar는 다양한 plot에 대해 그려질 수 있음.
  • ax:
    • colorbar가 연관된 plot이 그려진 Axes 객체로
    • 해당 객체의 옆에 colorbar가 위치하도록 해당 객체의 axis 들이 조정됨.
  • cax:
    • colorbar가 그려질 대상 Axes 객체로
    • colorbar의 위치와 세밀하게 조절할 때 사용 됨.

반환되는 객체는 colorbar의 axis 를 가지고 있음.

  • 해당 axis 속성을 통해 set_ticks, set_ticklabels, set_label 등 methods을 지원

Example

imshow와 pcolor 의 사용법에 대한 예제코드

import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl

x, y = np.meshgrid(np.linspace(-10,10,200), np.linspace(-10,10,200))
z = np.cos(x) * np.cos(y) * np.exp(-(x/5)**2-(y/5)**2)

fig, axs = plt.subplots(1, 2, figsize=(12, 5))

n = mpl.colors.Normalize(-np.max(np.abs(z)), np.max(np.abs(z)))

pc = axs[0].pcolor(x,y,z,norm=n, cmap=mpl.cm.bwr)
plt.colorbar(pc, ax=axs[0])

im = axs[1].imshow(z, extent=[-10,10,-10,10], norm=n, cmap=mpl.cm.bwr)
plt.colorbar(im, ax=axs[1], shrink=0.8)

결과는 다음과 같음.


더 읽어보면 좋은 자료.

https://dsaint31.tistory.com/389

 

[Math] Multi-variable vs. Multi-variate and Multiple Regression

1. Multi-variable vs Multi-variate (in Regression) Regression에서 많이 사용되는 경우이며, 위의 용어에서 variable은 독립변수에 해당하며, variate는 종속변수에 해당함. variable (변수) : 독립변수에 해당. univariabl

dsaint31.tistory.com

https://ds31x.blogspot.com/2023/09/dip-digital-image-processing.html

 

[DIP] Digital Image Processing 이란?

Image의 표현 : 함수 Image는 2개의 독립변수 $x,y$를 가지는 function $f(x,y)$로 정의 할 수 있음. 2차원 vector $\textbf{r}=\langle x,y \rangle$를 독립변수로 나타내는 경우도 많음. $\te...

ds31x.blogspot.com

 

728x90