我有一个由130,000点组成的数据框,其头部是这样的:
Latitude Longitude
0 36.577570 36.578930
1 36.577634 36.578939
2 36.577574 36.578917
3 36.577639 36.578926
4 36.576966 36.583783
我尝试使用seaborn和matplotlib创建这些点的热图,但是我失败了,我不知道该怎么办。我不需要在现实世界地图上绘制这些点,只需要创建一个常规的热图即可。如果你们能帮助的话,那将是很好的,非常感谢。
答案 0 :(得分:0)
我使用了可从plotly.js获得的常规“热图”图。我认为在python中也可以使用plotly。我将唯一的纬度用作y维,并将数组的值从90..0 ..- 90排序。我使用经度作为x维,数组的值从-180..0..180排序。然后,应该将热图的实际值存储在第一维为| y |的2D数组中。而第二维是| x |。
请在下面找到最终的JS代码:
var data = [
{
x: xvalues_arr,
y: yvalues_arr,
z: zvalues_arr,
type: 'heatmap',
connectgaps: true,
hoverongaps: true
}];
var layout = {
title: '',
annotations: [],
autosize: true,
margin: {
l: 0,
r: 0,
t: 0,
b: 0
},
hovermode: 'closest',
xaxis: {
ticks: '',
ticksuffix: ' ',
zeroline: false,
showline: false,
showgrid: false,
showticklabels: false
},
yaxis: {
ticks: '',
ticksuffix: ' ',
showticklabels: false,
zeroline: false,
showline: false,
showgrid: false
}
};
var config = {
'displayModeBar': false,
'responsive': true
};
Plotly.newPlot('world-map-env-data', data, layout, config);