Comment convertir des données de dispersion en cartes thermiques en Python
Lorsque vous travaillez avec des nuages de points représentant un grand nombre de points de données, cela peut être bénéfique pour visualiser les données sous forme de carte thermique. Cela permet une identification plus facile des zones avec des concentrations de données plus élevées.
Malgré la disponibilité d'exemples complets de génération de cartes thermiques dans Matplotlib, ces exemples supposent généralement l'existence de valeurs de cellules prédéfinies. Cet article répond à la nécessité d'une méthode pour convertir un ensemble de points X, Y non organisés en une carte thermique, où les zones avec une fréquence de coordonnées plus élevée semblent plus chaudes.
Solution utilisant numpy.histogram2d
Si les cartes thermiques hexagonales ne sont pas souhaitées, la fonction histogram2d de numpy fournit une solution alternative. Voici comment l'utiliser :
import numpy as np import matplotlib.pyplot as plt # Generate sample data x = np.random.randn(10_000) y = np.random.randn(10_000) # Create a heatmap using histogram2d heatmap, xedges, yedges = np.histogram2d(x, y, bins=50) extent = [xedges[0], xedges[-1], yedges[0], yedges[-1]] # Plot the heatmap plt.imshow(heatmap.T, extent=extent, origin='lower') plt.colorbar() # Add a colorbar to indicate heatmap values plt.show()
Ce code créera une représentation thermique 50x50 des points de données. En ajustant le paramètre des bacs, la taille de la carte thermique peut être personnalisée. Par exemple, bins=(512, 384) donnerait une carte thermique de 512 x 384.
En tirant parti de la puissance de numpy.histogram2d, il est possible de transformer les données dispersées en une carte thermique, fournissant ainsi des informations précieuses sur la distribution des données. points.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!