Google Heatmap - 在分配的权重差异很大时可视化数据

时间:2014-05-22 19:13:16

标签: google-maps google-maps-api-3 heatmap

我们正在创建一个包含热图图层的Google地图。我们正试图展示约1300家公司在美国的能源使用情况。对于每个公司,我们的纬度/长度和能源使用单位为千瓦时。我们的计划是通过他们的kWh使用来衡量热图上的公司。我们已经能够用加热层生产地图,但是,由于我们在能源使用方面存在巨大的差异(从数千到数十亿千瓦时),使用较少能量的公司根本没有显示出来。即使你放大他们的位置,你也看不到地图上的任何颜色。

有没有办法让所有公司都出现在热图中,无论他们的能耗有多小?我们已经尝试设置MaxIntensity,但仍然有一些较小的公司没有出现。我们还担心将MaxIntensity设置得太低,因为我们正在处理使用5000万千瓦时的公司和使用30亿千瓦时的公司。无论如何设置MinIntensity?或者在地图上为所有公司显示一些色彩?

1 个答案:

答案 0 :(得分:3)

热图图层接受渐变属性,期望颜色数组作为其值。这些颜色将始终从零开始对您的样本进行线性映射。此外,第一种颜色(比如说,渐变[0])应该是透明的,因为它应该映射零或空值。如果为第一个渐变点赋予不透明的颜色,那么整个世界将具有该颜色。

这意味着,例如,如果您输入20个点的渐变,则所有加权小于最大值的1/20的点将显示为渐变[0](透明)和渐变[1]之间的插值(第一个)渐变中不透明的颜色)。这将导致非标准化样本的半透明数据点。

如果您需要以某种方式展平您的值Universe,您必须使用预先计算的值为Heatmap提供信息。例如,log(kWh)的值将是一条更平坦的曲线来表示。

另一种解决方法是使用最大值的一小部分(例如,最大值的10%)来抵消每个值,因此最小值将在至少一个颜色间隔中从零位移。