在python中构造热图,以便对于特定值,热图显示空格,而不是颜色栏中的颜色

时间:2018-12-22 17:41:58

标签: python matplotlib seaborn heatmap

我有一个数据框,看起来像下面的数据框。我正在尝试使用seaborn或matplotlib构建热图,以便

my dataframe

我需要在热图中的空白处到数据框中出现值0.00885的所有地方。目前,这是我拥有的代码:

Index= [i for i in df_results.index]
Cols = list(df_results.columns)
df = pd.DataFrame(df_results, index=Index, columns=Cols)

sns.heatmap(df,cmap='viridis')

我需要以下内容: desired output

请注意,在我自己的图形中,y轴需要反转,以便从y轴的底数到0开始,直到100,并且我还尝试使x轴具有对数刻度形式,就像在正确的图中一样。当我在下面尝试以下代码时,它会反转x轴的顺序。请注意,我还尝试过反转包含yticks的列表,以使其朝着正确的方向前进。我不认为这种方法是正确的或Pythonic的。

Index= [i for i in df_results.index]+[100]
Cols = list(df_results.columns)
df = pd.DataFrame(df_results, index=Index[::-1], columns=Cols)
g=sns.heatmap(df,yticklabels=50,xticklabels=4,vmin=0.0,vmax=1.0,cmap='viridis',cbar_kws={"ticks":[0.0,0.5,1.0]})

我也找不到与正确输出匹配的渐变色标。

0 个答案:

没有答案