A heatmap layer plugin for maptalks.js
A plugin of maptalks.js to draw heatmap on maps, based on mourner's simpleheat.
npm install maptalks.heatmap
.https://unpkg.com/maptalks.heatmap/dist/maptalks.heatmap.min.js
As a plugin, maptalks.heatmap
must be loaded after maptalks.js
in browsers.
<script type="text/javascript" src="https://unpkg.com/maptalks/dist/maptalks.min.js"></script>
<script type="text/javascript" src="https://unpkg.com/maptalks.heatmap/dist/maptalks.heatmap.min.js"></script>
<script>
var data = [[0, 0, 0.3], [0, 0, 0.4], [0, 0, 0.4]];
var heatLayer = new maptalks.HeatLayer('heat', data).addTo(map);
</script>
import { HeatLayer } from 'maptalks.heatmap';
const data = [[0, 0, 0.3], [0, 0, 0.4], [0, 0, 0.4]];
const heatLayer = new HeatLayer('heat', data).addTo(map);
IE 9-11, Chrome, Firefox, other modern and mobile browsers.
Constructor
HeatmapLayer
is a subclass of maptalks.Layer and inherits all the methods of its parent.
new maptalks.HeatmapLayer(id, data, options)
config(key, value)
config layer's options and redraw the layer if necessary
heatLayer.config('max', 10);
heatLayer.config({
'radius' : 80,
'blur' : 30,
'gradient' : {0.4: 'blue', 0.65: 'lime', 1: 'red'}
});
Returns this
getData
get layer's data
Returns Array[]
setData(data)
set new data
Returns this
addPoint(point)
add more points
Returns this
redraw()
Returns this
isEmpty()
Returns Boolean
clear()
Returns this
toJSON(options)
export the layer's JSON.
// only export points in map's current extent.
heatLayer.toJSON({
'clipExtent' : map.getExtent()
});
Returns Object
We welcome any kind of contributions including issue reportings, pull requests, documentation corrections, feature requests and any other helps.
The only source file is index.js
.
It is written in ES6, transpiled by babel and tested with mocha and expect.js.
$ npm install
$ gulp watch
$ npm test
$ gulp tdd
$ gulp minify
$ npm run lint