Python中空间数据的热图

时间:2016-07-08 10:52:55

标签: python pandas spatial heatmap

我正在编写Python代码。我的数据集由三列组成,第一列是坐标,第三列是热量估算

                   X              Y      heat
0      497935.000000  179719.000000  0.048428
1      497935.000000  179719.000000  0.029399
2      497935.000000  179719.000000  0.066734
3      497935.000000  179719.000000  0.065524
4      497935.000000  179719.000000  0.062458
5      497935.000000  179719.000000  0.032225
6      497935.000000  179719.000000  0.028557
7      497463.000000  179526.000000  0.000388
8      497899.000000  179305.000000  0.000733
9      497805.000000  179364.000000  0.000158
10     498264.000000  180349.000000  0.000036
11     498020.000000  179602.000000  0.003149
...              ...            ...       ...

我想在XY平面上绘制数据,为每个点指定一种颜色,并反映其热值。目前我尝试使用命令

  

plt.scatter(df.X,df.Y)

enter image description here

但是每个点都有一个颜色取决于它的热量,在Python中。 在此先感谢

1 个答案:

答案 0 :(得分:3)

来自documentation

  

关键字c可以作为列的名称给出,以便为每个点提供颜色:

In [64]: df.plot.scatter(x='a', y='b', c='c', s=50);

所以你需要做的就是简单地指定heat列包含有关每个点颜色的信息:

df.plot.scatter(x=data.X, y=data.Y, c=data.heat)

如果您想应用自定义颜色贴图,还有cmap参数,可让您指定不同的color map

您还可以在scatter()方法的文档中详细了解。