Matplotlib의 pcolormesh()를 사용할 때 각 셀의 경계가 거칠게 보이는 대신 부드러운 보간(smooth interpolation) 효과를 얻으려면 shading="gouraud" 옵션을 사용하면 됩니다.
Gouraud 셰이딩이란?
기본 shading='flat' 방식은 각 격자 셀을 하나의 단색으로 채우기 때문에 색상 경계가 뚜렷하게 나타납니다. 반면 'gouraud' 방식은 각 격자점(꼭짓점)의 색상 값을 선형적으로 보간하여 셀 내부를 채우므로, 색상이 자연스럽게 이어지는 부드러운 그라데이션 효과를 얻을 수 있습니다.
구현 단계
그림 크기 설정: figure 크기를 지정하고 서브플롯 주변 및 사이의 여백(padding)을 조정합니다.
데이터 생성: numpy의 meshgrid()를 사용해 x, y 좌표 배열과 데이터를 생성합니다.
pcolormesh() 호출: shading='gouraud' 옵션과 함께 비정규 사각 격자 위의 유사색(pseudocolor) 플롯을 그립니다.
결과 확인: show() 메서드로 그림을 화면에 출력합니다.
예제 코드
import matplotlib.pylab as plt import numpy as np plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True data = np.random.random((3, 3)) x = np.arange(0, 3, 1) y = np.arange(0, 3, 1) x, y = np.meshgrid(x, y) plt.pcolormesh(x, y, data, cmap='RdBu', shading='gouraud') plt.show()
실행 결과

참고 사항
Gouraud 셰이딩을 사용할 때는 데이터 배열의 크기가 x, y 좌표 배열의 크기와 정확히 일치해야 합니다. 'flat' 방식은 데이터가 좌표보다 한 요소씩 작아도 되지만, 'gouraud'는 각 꼭짓점에서 색상 값을 직접 정의하기 때문에 차원이 같아야 합니다. 또한 컬러맵(cmap)을 활용하면 시각화 결과를 더욱 명확하게 표현할 수 있습니다.