Geomap

The Geomap panel visualization allows you to view and customize the world map using geospatial data. You can configure various overlay styles and map view settings to easily focus on the important location-based characteristics of the data.

Geomap panel Geomap panel Geomap - 图2

Map View

The map view controls the initial view of the map when the dashboard loads.

Initial View

The initial view configures how the GeoMap panel renders when the panel is first loaded.

  • View sets the center for the map when the panel first loads.
  • Latitude (available when the View mode is Coordinates)
  • Longitude (available when the View mode is Coordinates)
  • Zoom sets the initial zoom level for the GeoMap panel.

Data layer

The Geomap visualization supports multiple Data Layers. Each data layer determines how you visualize geospatial data on top of the base map.

Layer Types

There are four-layer types to choose from in the Geomap visualization.

  • Marker renders a marker at each data point.
  • Heatmap visualizes a heatmap of the data.
  • GeoJSON renders static data from a geojson file.

Layer Controls

The layer controls allow you to create layers, change their name, reorder and delete layers.

  • Add layer creates an additional, configurable data layer for the Geomap visualization. When you add a layer, you are prompted to select a layer type. You can change the layer type at any point during panel configuration. See the Layer Types section above for details on each layer type.
  • The layer controls allow you to rename, delete, and reorder the layers of the panel.
    • Edit layer name (pencil icon) renames the layer.
    • Trash Bin deletes the layer.
    • Reorder (six dots/grab handle) allows you to change the layer order. Data on higher layers will appear above data on lower layers. The panel will update the layer order as you drag and drop to help simplify choosing a layer order.

You can add multiple layers of data to a single Geomap panel in order to create rich, detailed visualizations.

Location

The Geomap panel needs a source of geographical data. This data comes from a database query, and there are four mapping options for your data.

  • Auto automatically searches for location data. Use this option when your query is based on one of the following names for data fields.
    • geohash: “geohash”
    • latitude: “latitude”, “lat”
    • longitude: “longitude”, “lng”, “lon”
    • lookup: “lookup”
  • Coords specifies that your query holds coordinate data. You will get prompted to select numeric data fields for latitude and longitude from your database query.
  • Geohash specifies that your query holds geohash data. You will get prompted to select a string data field for the geohash from your database query.
  • Lookup specifies that your query holds location name data that needs to be mapped to a value. You will get prompted to select the lookup field from your database query and a gazetteer. The gazetteer is the directory that is used to map your queried data to a geographical point.

Markers layer

The markers layer allows you to display data points as different marker shapes such as circles, squares, triangles, stars, and more.

  • Marker Color configures the color of the marker. The default Single color keeps all points a single color. There is an alternate option to have multiple colors depending on the data point values and the threshold set at the Thresholds section.
  • Marker Size configures the size of the marker. Default is Fixed size, making all marker size the same regardless of the data points. However, there is also an option to scale the circles to the corresponding data points. Min and Max marker size has to be set such that the Marker layer can scale within this range.
  • Marker Shape allows you to choose the shape, icon, or graphic to aid in providing additional visual context to your data. Choose from assets that are included with Grafana such as simple shapes or the Unicon library. You can also specify a URL containing an image asset. The image must be a scalable vector graphic (SVG).
  • Fill opacity configures the transparency of each marker.

Heatmap layer

The heatmap layer clusters various data points to visualize locations with different densities. To add a heatmap layer:

Click on the drop-down menu under Data Layer and choose Heatmap.

Similar to Markers, you are prompted with various options to determine which data points to visualize and how.

  • Weight values configure the intensity of the heatmap clusters. Fixed value keeps a constant weight value throughout all data points. This value should be in the range of 0~1. Similar to Markers, there is an alternate option in the drop-down to automatically scale the weight values depending on data values.
  • Radius configures the size of the heatmap clusters.
  • Blur configures the amount of blur on each cluster.

GeoJSON layer

The GeoJSON layer allows you to select and load a static GeoJSON file from the filesystem.

  • GeoJSON URL provides a choice of GeoJSON files that ship with Grafana.
  • Default Style controls which styles to apply when no rules above match.
    • Color configures the color of the default style
    • Opacity configures the default opacity
  • Style Rules apply styles based on feature properties
    • Rule allows you to select a feature, condition, and value from the GeoJSON file in order to define a rule. The trash bin icon can be used to delete the current rule.
    • Color configures the color of the style for the current rule
    • Opacity configures the transparency level for the current rule
  • Add style rule creates additional style rules.

Base layer

The base layer loads in a blank world map from the tile server to the Grafana panel. Several base layer options are available each with specific configuration options to style the base map. The default base layer is CartoDB base map. Custom default base layers can be defined in the .ini configuration file.

Configure the default base layer with provisioning

You can configure the default base map using config files with Grafana’s provisioning system. For more information on all the settings, refer to the provisioning docs page.

Use the JSON configuration option default_baselayer_config to define the default base map. There are currently four base map options to choose from: carto, esri-xyz, osm-standard, xyz. Here are some provisioning examples for each base map option.

  • carto loads the CartoDB tile server. You can choose from auto, dark, and light theme for the base map and can be set as shown below. The showLabels tag determines whether or not Grafana shows the Country details on top of the map. Here is an example:
  1. geomap_default_baselayer = `{
  2. "type": "carto",
  3. "config": {
  4. "theme": "auto",
  5. "showLabels": true
  6. }
  7. }`
  • esri-xyz loads the ESRI tile server. There are already multiple server instances implemented to show the various map styles: world-imagery, world-physical, topo, usa-topo, and ocean. The custom server option allows you to configure your own ArcGIS map server. Here are some examples:
  1. geomap_default_baselayer = `{
  2. "type": "esri-xyz",
  3. "config": {
  4. "server": "world-imagery"
  5. }
  6. }`
  1. geomap_default_baselayer = `{
  2. "type": "esri-xyz",
  3. "config": {
  4. "server": "custom",
  5. "url": "[tile server url]",
  6. "attribution": "[tile server attribution]"
  7. }
  8. }`
  • osm-standard loads the OpenStreetMap tile server. There are no additional configurations needed and the config fields can be left blank. Here is an example:
  1. default_baselayer_config = `{
  2. "type": "osm-standard",
  3. "config": {}
  4. }`
  • xyz loads a custom tile server defined by the user. Set a valid tile server url, with {z}/{x}/{y} for this option in order to properly load a default base map. Here is an example:
  1. default_baselayer_config = `{
  2. "type": "xyz",
  3. "config": {
  4. "attribution": "Open street map",
  5. "url": "https://tile.openstreetmap.org/{z}/{x}/{y}.png"
  6. }
  7. }`

enable_custom_baselayers allows you to enable or disable custom open source base maps that are already implemented. The default is true.