Quantcast
Channel: SCN : Blog List - SAP BusinessObjects Lumira
Viewing all articles
Browse latest Browse all 855

SAP Lumira geomap - Use your own geodata

$
0
0

This post is about geovisualization in Lumira and how, we at Galigeo, manage to show on a map any dimension/measure with any geographical data.

Here, I explain the concepts and first results of the work we have achieved with Lumira 1.23 and its SDK.


You can look at thispostto get a similar topic specific to geomapping with Design Studio:

Interested in Location Analytics for Design Studio ? Take a look at this blog


It is assumed that 80% of enterprise data is geo-located and this will increase in the future with mobility, Internet of Things, and smart grids amongst other factors.

Lumira is able to work with location based on Latitude/Longitude coordinates and a predefined hierarchy which is Region/Country/Sub-region/City:


However, geolocated data are often related to other geographical areas such as zip code, census blocks, counties or your own business geodata such as your sale territories, trade area, technical assets or networks.


Let's see how we address this issue and how we can map and analyze measures and dimensions related to any geographic data.

For example, the following map uses the zipcodes as a custom geographic dimension and a related measure calculated in Lumira.

 

Our solution relies on the following:

  • a dimension and a related measure from the data source
  • a custom geodata that describes the boundaries, lines or locations
  • a matching engine able to link the dimension to the corresponding geodata
  • a smart mapping visualization component

 

1. The dimension and measure from Lumira

Just use a normal dimension and measure of your dataset.

This dimension must correspond to a location: a zip code in the previous example or a territory, an asset...

 

2. The custom geodata

A geodata is a description of geographic information with coordinates, IDs and optional attributes.

This geodata can be polygons, lines or points and are organized into layers, one layer per geodata.

This geodata can be provided by different sources such as:

  • your own GIS server if you have one: Esri mapservices or others
  • cloud web services such as ArcGIS online
  • local files stored in geoJSON, which is a very common way to use your own geodata

 

Tons of geoJSON geodata and tools are easy to find on the web.

Have a look on geojson.io  that is an interesting tool to create your own geodata.

 

3. The matching engine

Here is the magic thing!

We built an algorithm that dynamically melts the Lumira dimension/measure with the appropriate geodata.

This melting process uses some metadata and business rules to pick up the correct geodata according the selected dimension.

Each Lumira's record is then joined with a geographic object, so we can map it using its dimension or measure.

We can combine several dimensions with several layers such as in the following example:

 

4. The smart mapping visualization

Here is the final step.

Now dimension and measure have been plotted on the map, the target is to make them speak.

For this we pick up the best representation to highlight the measure on the map.

In the map below, we have 2 measures represented on 2 different layers:

- "Water Release" is represented as geobubbles plotted at company location; the location is based on (Long, Lat) data coming from Lumira

- "Air Release" is represented as a choropleth map using zip dimension from Lumira and a local zipcodes layer stored as a geoJSON

 

 

Other representation such as heatmap or bivariate symbols can also be relevant to have deeper analysis of the data:

  


Next time, I will post an end to end tutorial on how to use the Galigeo Extension for Lumira with a concrete geodataset.

This extension will be soon available for download. Let me know if you are interested to get a pre-release.


Thanks for reading and don't hesitate to give me your feedbacks.


Viewing all articles
Browse latest Browse all 855

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>