Mic*_*ang 5 python matplotlib heatmap pandas seaborn
我正在尝试将热图中的 1 行更改为不同的颜色
这是数据集:
m = np.array([[ 0.7, 1.4, 0.2, 1.5, 1.7, 1.2, 1.5, 2.5],
[ 1.1, 2.5, 0.4, 1.7, 2. , 2.4, 2. , 3.2],
[ 0.9, 4.4, 0.7, 2.3, 1.6, 2.3, 2.6, 3.3],
[ 0.8, 2.1, 0.2, 1.8, 2.3, 1.9, 2. , 2.9],
[ 0.9, 1.3, 0.8, 2.2, 1.8, 2.2, 1.7, 2.8],
[ 0.7, 0.9, 0.4, 1.8, 1.4, 2.1, 1.7, 2.9],
[ 1.2, 0.9, 0.4, 2.1, 1.3, 1.2, 1.9, 2.4],
[ 6.3, 13.5, 3.1, 13.4, 12.1, 13.3, 13.4, 20. ]])
data = pd.DataFrame(data = m)
Run Code Online (Sandbox Code Playgroud)
现在我正在使用seaborn heatmap,我只能创建这样的东西:
cmap = sns.diverging_palette(240, 10, as_cmap = True)
sns.heatmap(data, annot = True, cmap = "Reds")
plt.show
Run Code Online (Sandbox Code Playgroud)
我希望改变最后一行的配色方案,这就是我想要实现的目标(我在Excel中做到了这一点):
我可以使用seaborn heatmap 在Python 中实现这一点吗?谢谢你!
您可以分成两部分,掩盖不需要的部分,然后分别绘制:
\n# Reds\ndata1 = data.copy()\ndata1.loc[7] = float(\'nan\')\nax = sns.heatmap(data1, annot=True, cmap="Reds")\n\n# Greens\ndata2 = data.copy()\ndata2.loc[:6] = float(\'nan\')\nsns.heatmap(data2, annot=True, cmap="Greens")\nRun Code Online (Sandbox Code Playgroud)\n输出:
\n\n注意。您需要使loc[\xe2\x80\xa6]参数适应您的实际索引名称
| 归档时间: |
|
| 查看次数: |
1116 次 |
| 最近记录: |