values from example python pandas heatmap

python - from - Hacer mapa de calor de pandas DataFrame



pandas series to dataframe (4)

Útil sns.heatmap api está here . Verifique los parámetros, hay un buen número de ellos. Ejemplo:

import seaborn as sns %matplotlib inline idx= [''aaa'',''bbb'',''ccc'',''ddd'',''eee''] cols = list(''ABCD'') df = DataFrame(abs(np.random.randn(5,4)), index=idx, columns=cols) # _r reverses the normal order of the color map ''RdYlGn'' sns.heatmap(df, cmap=''RdYlGn_r'', linewidths=0.5, annot=True)

Tengo un marco de datos generado a partir del paquete Pandas de Python. ¿Cómo puedo generar heatmap usando DataFrame del paquete pandas?

import numpy as np from pandas import * Index= [''aaa'',''bbb'',''ccc'',''ddd'',''eee''] Cols = [''A'', ''B'', ''C'',''D''] df = DataFrame(abs(np.random.randn(5, 4)), index= Index, columns=Cols) >>> df A B C D aaa 2.431645 1.248688 0.267648 0.613826 bbb 0.809296 1.671020 1.564420 0.347662 ccc 1.501939 1.126518 0.702019 1.596048 ddd 0.137160 0.147368 1.504663 0.202822 eee 0.134540 3.708104 0.309097 1.641090 >>>


Para las personas que miran esto hoy, recomendaría el heatmap() Seaborn heatmap() como se documenta here .

El ejemplo anterior se haría de la siguiente manera:

import numpy as np from pandas import DataFrame import seaborn as sns %matplotlib inline Index= [''aaa'', ''bbb'', ''ccc'', ''ddd'', ''eee''] Cols = [''A'', ''B'', ''C'', ''D''] df = DataFrame(abs(np.random.randn(5, 4)), index=Index, columns=Cols) sns.heatmap(df, annot=True)

Donde %matplotlib es una función mágica de IPython para los que no están familiarizados.


Quieres matplotlib.pcolor :

import numpy as np from pandas import DataFrame import matplotlib.pyplot as plt Index= [''aaa'', ''bbb'', ''ccc'', ''ddd'', ''eee''] Cols = [''A'', ''B'', ''C'', ''D''] df = DataFrame(abs(np.random.randn(5, 4)), index=Index, columns=Cols) plt.pcolor(df) plt.yticks(np.arange(0.5, len(df.index), 1), df.index) plt.xticks(np.arange(0.5, len(df.columns), 1), df.columns) plt.show()


Si no necesita un diagrama por ejemplo, y simplemente está interesado en agregar color para representar los valores en un formato de tabla, puede usar el método style.background_gradient() del marco de datos de pandas. Este método colorea la tabla HTML que se muestra al ver los marcos de datos pandas, por ejemplo, en el JupyterLab Notebook y el resultado es similar al uso del "formato condicional" en el software de hoja de cálculo:

import numpy as np import pandas as pd index= [''aaa'', ''bbb'', ''ccc'', ''ddd'', ''eee''] cols = [''A'', ''B'', ''C'', ''D''] df = pd.DataFrame(abs(np.random.randn(5, 4)), index=index, columns=cols) df.style.background_gradient(cmap=''summer'')

Hay algunos detalles más en esta respuesta relacionada , y la sección de diseño de la documentación de pandas pasa por muchas de las opciones en profundidad.