我有一个熊猫数据框8040行和7115列,列名从7774开始,以659结尾。
当我使用:p绘制数据时
sns.heatmap(df, cmap='rainbow')
它保留索引但不显示光标值(x = y =在屏幕上为空白)
Pandas dataframe plotted with seaborn heatmap
当我用:p绘制时
plt.imshow(df.values, cmap='rainbow', aspect='auto')
它显示x = y =值,但是将数据帧中的索引值重置为从零开始。
Pandas dataframe plotted with imshow
无论如何,我可以使用imshow绘制数据并保留绘制的数据框的索引和列名。
谢谢
可验证的示例:
df = pd.DataFrame.from_dict(shot_no)
df.index = np.arange(1, len(df) + 1)
df = df.astype(int)
extent_x=df.columns.values
extent_y=df.index.values
extent_x=extent_x.tolist()
extent_y=extent_y.tolist()
extent_left_x=extent_x[0]
extent_right_x=extent_x[-1]
extent_s=[extent_left_x+0.5,extent_right_x,1,8040]
fig, ax1 = plt.subplots(1,1)
ax1.imshow(df.values, cmap='rainbow', aspect='auto', extent=extent_s)
第二,是否有一种方法可以通过将鼠标悬停在热图上来获取x =和y =值。
或通过鼠标单击事件绑定热图。
这还将成为捕获鼠标坐标的唯一问题