Leaflet Map

  • This map plots markers on an interactive map using latitude and longitude columns
  • A customizable tooltip is included by passing column names in an array
  • Does not support value formatting yet
  • Auto-zooms to the points plotted on the map
	
<LeafletMap data={coords} lat=lat long=long name=store_name tooltipFields={['segment', 'annual_sales', 'city']} height=500 />

Future Improvements

  • Syntax should be expanded to allow for more flexibility and customization. E.g., allow for definitions of multiple sets and styles of markers, arbitrary shapes, choropleths, etc.
  • Syntax may be similar to the DataTable with Columns. For example, if you wanted to show service locations, along with a service radius:
    	
    <LeafletMap basemap=cartoGrey> <Markers color=red data={high_value_locations} tooltipFields={['segment', 'annual_sales', 'city']} /> <Markers color=blue data={low_value_locations} tooltipFields={['segment', 'annual_sales', 'city']} /> <Circle centreLat=51.2342 centreLong=-0.1258 radius=2 label="Service Area" /> </LeafletMap>
  • Having a few off-the-shelf styles for markers/shapes would be helpful (like in ReferenceArea)
  • Tooltip customization may require specific syntax - e.g., a Tooltip component that slots into the Markers component
  • Like with DataTable, if there are common use cases, it might make sense to cover those in their own pre-set components which call the underlying LeafletMap component