[Matplotlib] matshow

Monotonic growth·2024년 1월 11일
import numpy as np
import matplotlib.pyplot as plt


def matrix_plot(matrix, title="") -> None:
    """ matrix : MxN Array-like """
    
    # 한글 지원을 위한 글꼴 설정
    plt.rcParams['font.family'] ='Malgun Gothic'
    plt.rcParams['axes.unicode_minus'] = False

	# matshow() 호출
    _, ax = plt.subplots()
    ax.matshow(matrix, cmap='summer')
	
    # matrix element 시각화
    for (i, j), z in np.ndenumerate(matrix):
        ax.text(j, i, '{:.2f}'.format(z), ha='center', va='center')

	# 축 눈금 정보
    y_ticks_labels = [ ... ]  # Array-like
    x_ticks_labels = [ ... ]  # Array-like 
    x_ticks_positions = np.arange(0, len(x_ticks_labels), 1)
    y_ticks_positions = np.arange(0, len(y_ticks_labels), 1)
    
    # 축 눈금 설정
    plt.xticks(x_ticks_positions, x_ticks_labels)
    plt.yticks(y_ticks_positions, y_ticks_labels)
    
    # 제목 설정
    plt.title(title)
    
    # Plot
    plt.show()

일반적인 M×NM\times N 행렬을 matplotlib.pyplot.matshow()로 시각화해주는
Snippet이다.

0개의 댓글