【问题标题】:Creating a heatmap of coordinates using plotly or seaborn使用 plotly 或 seaborn 创建坐标热图
【发布时间】:2019-01-20 07:01:35
【问题描述】:

我有一个包含 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 创建这些点的热图,但是我失败了,我现在不知道该怎么做。我不需要在真实世界地图上绘制这些点,我只需要创建一个常规热图。如果你们能帮忙就太好了,非常感谢。

【问题讨论】:

  • 你期望什么样的输出?
  • 您可能正在寻找plt.hist2d

标签: python pandas matplotlib seaborn heatmap


【解决方案1】:

我使用了 plotly.js 提供的常规“热图”图。我认为 plotly 在 python 中也可用。我使用独特的纬度作为 y 维度,数组的值从 90..0..-90 排序。我使用经度作为 x 维度,数组的值从 -180..0..180 排序。那么热图的实际值应该存储在一个二维数组中,其中第一个维度是 |y|第二维是|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);

【讨论】:

    猜你喜欢
    • 2019-05-25
    • 1970-01-01
    • 2018-11-23
    • 2022-09-25
    • 1970-01-01
    • 2017-08-18
    • 2019-10-21
    • 2020-10-16
    • 1970-01-01
    相关资源
    最近更新 更多