leaflet js: draw POIs as canvas

后端 未结 2 1202
失恋的感觉
失恋的感觉 2021-02-08 12:03

I want to draw many geo points with Leaflet. Therefore I want to use HTML5 canvas to improve the performance. My datasoure is geoJSON. As I saw in the documention of Leaflet, it

2条回答
  •  野性不改
    2021-02-08 12:59

    Expanding on the original answer in case anyone needs this for Leaflet 1.0. You should still use L.circleMarker() (Leaflet circleMarker documentation) instead of L.marker(), but the way to use the canvas has changed.

    In Leaflet 1.0, the experimental L_PREFER_CANVAS switch has been upgraded to an official map option preferCanvas (Leaflet preferCanvas documentation).

    var map = L.map('mapid', {
            preferCanvas: true
        });
    

    Alternatively, you can explicitly set the canvas renderer; I think this does the same thing as the preferCavas option. Here's the Leaflet documentation for canvas.

    var map = L.map('mapid', {
            renderer: L.canvas()
        });
    

    Either of these options (preferCanvas: true or renderer: L.canvas()) with L.circleMarker() was significantly faster than a regular layer using L.marker().

提交回复
热议问题