首页 > 解决方案 > 使用熊猫数据框的热图

问题描述

我有一个包含以下行的数据框:

    protein   IHD          CM         ARR         VD        CHD           CCD         VOO      
0   q9uku9  0.000000    0.039457    0.032901    0.014793    0.006614    0.006591    0.000000    
1   o75461  0.000000    0.005832    0.027698    0.000000    0.000000    0.006634    0.000000

等等

我想要 X 轴上的疾病名称(IHD、CM 等)的热图,y = 轴上的蛋白质名称。我遇到了一个浮动问题,因为蛋白质列是字母。在我的热图上,我希望显示蛋白质名称,因此仅删除整个列是没有帮助的。有没有人有关于如何做到这一点的任何提示?

标签: pythonpandas

解决方案


将您的蛋白质设置为索引

import numpy as np 
from pandas import DataFrame
import matplotlib.pyplot as plt

df.set_index('protein', inplace = True)

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()

推荐阅读