Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Mengubah Data Taburan menjadi Peta Haba dengan Matplotlib?

Bagaimana untuk Mengubah Data Taburan menjadi Peta Haba dengan Matplotlib?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-07 18:10:03699semak imbas

How to Transform Scatter Data into a Heatmap with Matplotlib?

Memvisualisasikan Data Taburan sebagai Peta Haba dengan Matplotlib

Menukar plot serakan kepada peta haba membolehkan perwakilan pengedaran data yang lebih intuitif. Matplotlib menawarkan beberapa kaedah untuk mencapai transformasi ini.

Menggunakan Heksagon untuk Sel Peta Haba

Salah satu pendekatan ialah menggunakan fungsi hexbin untuk mencipta tong heksagon. Setiap tong mewakili bilangan titik data tertentu dan keamatan warna mencerminkan ketumpatan titik dalam tong itu.

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()

Mencipta Peta Haba dengan histogram2d Numpy

An kaedah alternatif ialah menggunakan fungsi histogram2d daripada Numpy. Fungsi ini menjana histogram 2D, di mana setiap tong sepadan dengan rantau tertentu dalam ruang data. Nilai dalam histogram mewakili kiraan titik data dalam setiap tong.

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()

Dengan melaraskan bilangan tong, anda boleh mengawal resolusi peta haba. Tong sampah yang lebih kecil menghasilkan perwakilan yang lebih halus, manakala tong yang lebih besar memberikan gambaran keseluruhan yang lebih umum tentang pengedaran data.

Atas ialah kandungan terperinci Bagaimana untuk Mengubah Data Taburan menjadi Peta Haba dengan Matplotlib?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn