Plotly - Mapa de calor
Un mapa de calor (o mapa de calor) es una representación gráfica de datos donde los valores individuales contenidos en una matriz se representan como colores. El propósito principal de Heat Maps es visualizar mejor el volumen de ubicaciones / eventos dentro de un conjunto de datos y ayudar a dirigir a los espectadores hacia las áreas en las visualizaciones de datos que más importan.
Debido a su dependencia del color para comunicar valores, los mapas de calor se utilizan quizás con más frecuencia para mostrar una vista más generalizada de valores numéricos. Los mapas de calor son extremadamente versátiles y eficientes para llamar la atención sobre las tendencias, y es por estas razones que se han vuelto cada vez más populares dentro de la comunidad analítica.
Los mapas de calor se explican por sí mismos de forma innata. Cuanto más oscuro sea el tono, mayor será la cantidad (cuanto mayor sea el valor, más estrecha será la dispersión, etc.). El módulo graph_objects de Plotly contieneHeatmap()función. Necesita x,y y zatributos. Su valor puede ser una lista, una matriz numérica o un marco de datos de Pandas.
En el siguiente ejemplo, tenemos una lista o matriz 2D que define los datos (cosecha de diferentes agricultores en toneladas / año) al código de color. Luego, también necesitamos dos listas de nombres de agricultores y hortalizas que cultivan.
vegetables = [
"cucumber",
"tomato",
"lettuce",
"asparagus",
"potato",
"wheat",
"barley"
]
farmers = [
"Farmer Joe",
"Upland Bros.",
"Smith Gardening",
"Agrifun",
"Organiculture",
"BioGoods Ltd.",
"Cornylee Corp."
]
harvest = np.array(
[
[0.8, 2.4, 2.5, 3.9, 0.0, 4.0, 0.0],
[2.4, 0.0, 4.0, 1.0, 2.7, 0.0, 0.0],
[1.1, 2.4, 0.8, 4.3, 1.9, 4.4, 0.0],
[0.6, 0.0, 0.3, 0.0, 3.1, 0.0, 0.0],
[0.7, 1.7, 0.6, 2.6, 2.2, 6.2, 0.0],
[1.3, 1.2, 0.0, 0.0, 0.0, 3.2, 5.1],
[0.1, 2.0, 0.0, 1.4, 0.0, 1.9, 6.3]
]
)
trace = go.Heatmap(
x = vegetables,
y = farmers,
z = harvest,
type = 'heatmap',
colorscale = 'Viridis'
)
data = [trace]
fig = go.Figure(data = data)
iplot(fig)
La salida del código mencionado anteriormente se da de la siguiente manera: