Python 单柱海本热图
我有一个数据框,它有一个索引(单词)和一个单列(计数),用于一些歌词。我正在尝试根据字数创建热图Python 单柱海本热图,python,seaborn,Python,Seaborn,我有一个数据框,它有一个索引(单词)和一个单列(计数),用于一些歌词。我正在尝试根据字数创建热图 Cuenta Que 179 La 145 Y 142 Me 113 No 108 我正试图制作这样的热图: df1 = pd.DataFrame.from_dict([top50]).T df1.columns = ['Cuenta'] df1.sort_values(['Cuenta'], ascending = False, inplace=True) result =
Cuenta
Que 179
La 145
Y 142
Me 113
No 108
我正试图制作这样的热图:
df1 = pd.DataFrame.from_dict([top50]).T
df1.columns = ['Cuenta']
df1.sort_values(['Cuenta'], ascending = False, inplace=True)
result = df1.pivot(index=df1.index, columns='Cuenta', values=df1.Cuenta.count)
sns.heatmap(result, annot=True, fmt="g", cmap='viridis')
plt.show()
但是,它不断抛出没有属性“levels”的“Index”对象
你知道为什么这样不行吗?我尝试使用索引或单词作为单独的列,但仍然不起作用。数据是一维的。计数已经存在于数据帧的一(也是唯一)列中。没有任何无意义的方法来透视这些数据 因此,您可以直接将数据框绘制为热图
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
df = pd.DataFrame({"Cuenta": [179,145,142,113,108]},
index=["Que", "La", "Y", "Me", "No"])
sns.heatmap(df, annot=True, fmt="g", cmap='viridis')
plt.show()