Point Map
<PointMap
data={la_locations}
lat=lat
long=long
value=sales
valueFmt=usd
pointName=point_name
height=200
/>
Examples
Custom Basemap
You can add a different basemap by passing in a basemap URL. You can find examples here: https://leaflet-extras.github.io/leaflet-providers/preview/
Note: you need to wrap the url in curly braces and backticks to avoid the curly braces in the URL being read as variables on your page
<PointMap
data={la_locations}
lat=lat long=long
value=sales
valueFmt=usd
pointName=point_name
height=200
basemap={`https://tiles.stadiamaps.com/tiles/alidade_smooth_dark/{z}/{x}/{y}{r}.{ext}`}
/>
Custom Tooltip
tooltipType=hover
<PointMap
data={la_locations}
lat=lat
long=long
value=sales
valueFmt=usd
pointName=point_name
height=200
tooltipType=hover
tooltip={[
{id: 'point_name', showColumnName: false, valueClass: 'text-xl font-semibold'},
{id: 'sales', fmt: 'eur', fieldClass: 'text-[grey]', valueClass: 'text-[green]'}
]}
/>
With clickable link and tooltipType=click
<PointMap
data={la_locations}
lat=lat
long=long
value=sales
valueFmt=usd
pointName=point_name
height=200
tooltipType=click
tooltip={[
{id: 'point_name', showColumnName: false, valueClass: 'text-xl font-semibold'},
{id: 'sales', fmt: 'eur', fieldClass: 'text-[grey]', valueClass: 'text-[green]'},
{id: 'link_col', showColumnName: false, contentType: 'link', linkLabel: 'Click here', valueClass: 'font-bold mt-1'}
]}
/>
Custom Color Palette
<PointMap
data={la_locations}
lat=lat
long=long
value=sales
valueFmt=usd
pointName=point_name
height=200
colorPalette={['yellow','orange','red','darkred']}
/>
Custom Styling
<PointMap
data={la_locations}
lat=lat
long=long
pointName=point_name
height=200
color=#128c2b
size=10
opacity=0.6
borderWidth=0
/>
Link Drilldown
Pass in a link
column to enable navigation on click of the point. These can be absolute or relative URLs
<PointMap
data={la_locations}
lat=lat
long=long
link=link_col
height=200
/>
Use Map as Input
Use the name
prop to set an input name for the map - when a point is clicked, it will set the input value to that row of data
<PointMap
data={la_locations}
lat=lat
long=long
name=my_point_map
height=200
/>
Click a point on the map to see the input value get updated:
Selected value for {inputs.my_point_map}
:
{ "point_name": {} }
Selected value for {inputs.my_point_map.point_name}
:
Filtered Data
Loading...
Options
Points
Required
Query result, referenced using curly braces
- Options:
- query name
Column that determines the value displayed at each point.
- Options:
- column name
Format string for displaying the value.
- Options:
- format string
Column containing the names/labels of the points - by default, this is shown as the title of the tooltip.
- Options:
- column name
Color Scale
Array of colors used for theming the points based on data
- Options:
- array of colors
Minimum value to use for the color scale.
- Options:
- number
Maximum value to use for the color scale.
- Options:
- number
Interactivity
URL to navigate to when a point is clicked.
- Options:
- URL
Input name. Can be referenced on your page with ``
- Options:
- string
Styling
Color for the points. Use when you want all points to be the same color.
- Options:
- CSS color value
Size of the points
- Options:
- number
- Default:
- 5
Width of the border around each point.
- Options:
- pixel value
Color of the border around each point.
- Options:
- CSS color value
Opacity of the points.
- Options:
- number between 0 and 1
Selected State
When point is selected: Color for the points. Use when you want all points to be the same color.
- Options:
- CSS color value
When point is selected: Width of the border around each point.
- Options:
- pixel value
- Default:
- 0.75
When point is selected: Color of the border around each point.
- Options:
- CSS color value
When point is selected: Opacity of the points.
- Options:
- number between 0 and 1
- Default:
- 0.8
Tooltips
Whether to show tooltips
- Options:
- boolean
- Default:
- true
CSS class applied to the tooltip content. You can pass Tailwind classes into this prop to custom-style the tooltip
- Options:
- CSS class
Configuration for tooltips associated with each area. See below example for format
- Options:
- array of objects
tooltip
example:
tooltip={[
{id: 'zip_code', fmt: 'id', showColumnName: false, valueClass: 'text-xl font-semibold'},
{id: 'sales', fmt: 'eur', fieldClass: 'text-[grey]', valueClass: 'text-[green]'},
{id: 'zip_code', showColumnName: false, contentType: 'link', linkLabel: 'Click here', valueClass: 'font-bold mt-1'}
]}
All options available in tooltip
:
id
: column IDtitle
: custom string to use as title of fieldfmt
: format to use for valueshowColumnName
: whether to show the column name. Iffalse
, only the value will be showncontentType
: currently can only be "link"linkLabel
: text to show for a link when contentType="link"formatColumnTitle
: whether to automatically uppercase the first letter of the title. Only applies whentitle
not passed explicitlyvalueClass
: custom Tailwind classes to style the valuesfieldClass
: custom Tailwind classes to style the column names
Base Map
URL template for the basemap tiles.
- Options:
- URL
Optional title displayed above the map.
- Options:
- text
Starting latitude for the map center.
- Options:
- latitude coordinate
Starting longitude for the map center.
- Options:
- longitude coordinate
Initial zoom level of the map.
- Options:
- number (1 to 18)
Height of the map in pixels.
- Options:
- pixel value
- Default:
- 300