>  기사  >  백엔드 개발  >  Matplotlib를 사용하여 분산형 데이터를 히트맵으로 변환하는 방법은 무엇입니까?

Matplotlib를 사용하여 분산형 데이터를 히트맵으로 변환하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-07 18:10:03757검색

How to Transform Scatter Data into a Heatmap with Matplotlib?

Matplotlib를 사용하여 산점도 데이터를 히트맵으로 시각화

산점도를 히트맵으로 변환하면 데이터 분포를 보다 직관적으로 표현할 수 있습니다. Matplotlib은 이러한 변환을 달성하기 위한 여러 가지 방법을 제공합니다.

히트맵 셀에 육각형 사용

한 가지 접근 방식은 hexbin 함수를 활용하여 육각형 저장소를 만드는 것입니다. 각 bin은 특정 수의 데이터 포인트를 나타내며 색상 강도는 해당 bin 내 포인트의 밀도를 반영합니다.

import matplotlib.pyplot as plt
import numpy as np

# Generate some sample data
x = np.random.randn(10000)
y = np.random.randn(10000)

# Create a heatmap using hexagons
plt.hexbin(x, y, gridsize=50, cmap='jet')
plt.colorbar()
plt.show()

Numpy의 histogram2d를 사용하여 히트맵 만들기

An 다른 방법은 Numpy의 histogram2d 함수를 사용하는 것입니다. 이 함수는 각 빈이 데이터 공간의 특정 영역에 해당하는 2D 히스토그램을 생성합니다. 히스토그램의 값은 각 bin의 데이터 포인트 수를 나타냅니다.

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

# Generate some sample data
x = np.random.randn(8873)
y = np.random.randn(8873)

heatmap, xedges, yedges = np.histogram2d(x, y, bins=50)
extent = [xedges[0], xedges[-1], yedges[0], yedges[-1]]

plt.clf()
plt.imshow(heatmap.T, extent=extent, origin='lower')
plt.colorbar()
plt.show()

bin 수를 조정하여 히트맵의 해상도를 제어할 수 있습니다. 저장소가 작을수록 더 세분화된 표현이 가능하고, 저장소가 클수록 데이터 분포에 대한 보다 일반적인 개요가 제공됩니다.

위 내용은 Matplotlib를 사용하여 분산형 데이터를 히트맵으로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.