Python 绘制熊猫数据框的3列作为热图

Python 绘制熊猫数据框的3列作为热图,python,pandas,matplotlib,dataframe,Python,Pandas,Matplotlib,Dataframe,我几乎可以肯定这是一个复制品,但我很难在合理的时间内找到答案 我有以下三列的dataframe: COLS FUNCS FLUFF 32 1 1 3.24707 33 1 2 14.89260 34 1 3 48.60840 35 1 4 73.68160 36 2 1 4.19922 37 2 2 64.89260 38 2 3

我几乎可以肯定这是一个复制品,但我很难在合理的时间内找到答案

我有以下三列的dataframe:

    COLS  FUNCS  FLUFF
32     1      1    3.24707
33     1      2   14.89260
34     1      3   48.60840
35     1      4   73.68160
36     2      1    4.19922
37     2      2   64.89260
38     2      3   87.91500
39     2      4   91.01560
40     4      1   23.58400
41     4      2   87.89060
42     4      3   95.38570
43     4      4   98.33980
44     8      1   34.47270
45     8      2   95.43460
46     8      3   99.04790
47     8      4   99.80470
我想绘制这些数据的热图,其中COLS在水平轴上,FUNCS在垂直轴上,单元格根据绒毛进行缩放我不想使用seaborn。我想专门使用matplotlib和/或pandas

如果您对如何实现对数配色方案也有一些见解,那也将非常好

df.set_index(['COLS', 'FUNCS']).FLUFF.unstack(0).pipe(plt.imshow)
我应该为你做这件事

正如cel在评论中提到的,如果您的数据实际上是稀疏的,您可能需要执行
.reindex
插入所有行和列,适当地填充NAN


对于对数刻度,请查看

矩阵稀疏吗?为什么
COLS
列跳过值?这正是我想要的。谢谢