Flutter Map Heatmap plugin
A Simple heatmap plugin written for for flutter_map package.
example

A full example can be found under the example project.
Usage
Add flutter_map and flutter_map_heatmap to your pubspec:
dependencies:
flutter_map: ^6.0.0
flutter_map_heatmap: any # or the latest version on Pub
latlong2: ^0.9.0
Flutter heatmaps is implemented as a tile provider.
Add it in your FlutterMap and configure it using HeatMapOptions.
Widget build(BuildContext context) {
return FlutterMap(
options: new MapOptions(initialCenter: new LatLng(57.8827, -6.0400), initialZoom: 8.0),
children: [
TileLayer(
urlTemplate: "https://tile.openstreetmap.org/{z}/{x}/{y}.png"),
if (data.isNotEmpty) HeatMapLayer(
heatMapDataSource: InMemoryHeatMapDataSource(data: data),
heatMapOptions: HeatMapOptions(gradient: this.gradients[this.index],
minOpacity: 0.1),
reset: _rebuildStream.stream,
)
],
);
}
See the full example
InMemoryHeatMapDataSource is provided out of the box but its easy to implement your own datasource
provider by implementing HeatMapDataSource
TODO
complete GriddedHeatMapDataSource for gridding the dataimprove heatmaps at lower zoom levels by scaling the radius used during painting.