使用matplot lib的二维热图

2024-05-14 09:21:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我是python新手,请耐心等待:

我一直在尝试绘制一个二维热图,类似于下图所示:

http://mips.helmholtz-muenchen.de/plant/static/images/A_thal_LTRs.png

使用contourf或colorbar类,但似乎不起作用。在

我使用两个非常简单的数据集,如代码所示: `在

import numpy as np
import matplotlib.pyplot as plt

abundance = [0.2,0.3,0.25,0.05,0.05,0.04,0.06]

grain_size = [200,100,70,50,10,5,1]

`

我希望粒度数组是我的x轴(对数刻度),颜色代表每个粒度对应的丰度(因此0.2对应200,0.3对应100等等)

所以我知道我需要规范化我的丰富度数组以适应色条,但是呢?在

非常感谢!在


Tags: importhttpas粒度绘制staticde数组
1条回答
网友
1楼 · 发布于 2024-05-14 09:21:41

这是你想要的吗?在

import matplotlib.cm as cm

ab = np.array(abundance)
gs = np.array(grain_size)
ab_norm = ab/ab.max()*100
plt.matshow([ab_norm], cmap=cm.gist_rainbow_r) 
plt.xticks(range(7), gs)
plt.yticks(range(1), ["abundance"])
plt.colorbar()
plt.show()

ab

您可以通过选择另一个,see here for some of them来更改colormap。在

如果不是这样,如果你不明白什么,告诉我。 希望这有帮助。在

相关问题 更多 >

    热门问题