Tech Topics

Top 10 new Elastic Maps features since beta

Elastic Maps has been released as GA in Kibana 7.3 and is production ready. Elastic Maps was first introduced in Kibana 6.7 with a beta release. The path from beta to GA is filled with so many new features that it’s difficult to keep up. This blog post highlights the top 10 features added along the way.

1) Embed map in dashboard

Elastic Maps now adds the ability to include your saved map on a dashboard. You can view and interact with your geospatial data alongside bar charts, pie charts, and other visualizations. Click the map to quickly hone in on the data you desire, and that data is shown across the dashboard, similar to how you interact with other visualization types. Use the drawing to tool and create geofences to narrow the dashboard to geographic areas of interest.

Embed map in dashboard

2) GeoJSON upload

Another notable Maps improvement is that it’s now easier to get your geospatial data into the Elastic Stack. Use the new GeoJSON upload feature (beta) to drag and drop your points, shape files, and features and ingest them directly into Elasticsearch. When using GeoJSON upload to ingest shape files, you can join on terms in other indices. This enables a very similar experience to an Elastic Maps Service layer but with your own custom shape files.

GeoJSON upload feature

3) Improved legend

There is a lot going on in your maps, with multiple layers and multiple ways to style each layer. The legend saw significant improvements from beta. In beta, the legend only displayed the layer icon and name. In GA, the legend is your go-to resource for understanding your map.

Hovering over the layer name opens a tooltip providing meaningful feedback about each layer. The legend icon also indicates the layer status: error, out-of-zoom-range, no data, or hidden.

More-detailed legend

Each layer can be individually expanded/collapsed to show the scale for dynamically styled properties. Best of all, if the legend is getting in the way, just collapse it entirely to get an unobstructed view of your map.

Layer expand/collapse

4) Symbolize points with icons

The beta release limited symbolizing points to only circles. You can now symbolize your points with icons that you can color, size, and rotate based on property values.

Symbolize points with icons

5) Dark themed tiles

Building on the support for dark mode in Kibana 7.0, the Elastic Maps Service now publishes dark themed tiles. Configure your EMS tile layers with “Autoselect on Kibana theme” and your map tiles will seamlessly switch between bright and dark themed tiles, respecting Kibana’s dark mode.

Kibana light theme

Kibana dark theme

6) Improved tooltips

In Elastic Maps beta release, tooltips only showed properties for the top feature. Now tooltips display a count of features at the current location. Pagination controls give you the ability to cycle through all features and view their properties. Elastic Maps GA release also includes the ability to provide custom labels for Grid aggregation metrics and Term join metrics. Tooltips were also improved to use Index pattern field formatters to format field values.

Improved tooltips

7) Class styling with layer filtering

Class styling symbolizes features by class and requires multiple layers.

  1. Define the class for each layer by applying a search to the individual layer by setting Filters in the layer details panel.
  2. Setting a filter

You can also specify a where clause for term joins to narrow the results.

Setting a where clause

  1. Use “Clone layer” action in Layer Actions menu to quickly copy layers.
  2. Using Clone layer to quickly copy a layer
  1. Finally, use static styling to symbolize each layer.
  2. Use static styling

8) Most recent entities

Most recent entities uses Elasticsearch terms aggregation to group your documents by entity. Then, top hits metric aggregation accumulates the most recent documents for each entry. This is useful for visualizing GPS tracks, to show the last known location of a vehicle. The example below uses most recent entities to show the location of public transportation buses in Toronto, CA.

Displaying most recent entries

9) New subdivision layers in Elastic Maps Service

First level subdivisions of all countries in South America are now available in Elastic Maps. Each layer includes the ISO 3166-2 code, which can be joined to aggregation results from Elasticsearch. The example below shows a count of unique web visitors by joining the nginx.access.geoip.region_iso_code field from an Elasticsearch index to the ISO 3166-2 code in the vector layers.

Subdivision layers for South America

10) Disable global search bar for any layer

You can now disable the global search bar for any layer so that the search bar does not impact the results for a layer. This is really useful when your map contains layers from multiple indices and searching one index causes other indices to result in empty layers because a field exists in one index, but does not exist in other indices.

Disable global search bar

Give it a try

Want to take Elastic Maps for a test drive? Pick up a free 14-day trial of the Elasticsearch Service, or you can download it as part of the default distribution.