Skip to Content
Author's profile photo Michael Howles

SAP Design Studio SDK Maps (Part 4) – Maps with Bubbles and Maps with Plots

This is my 4th post related to mapping in the Design Studio SDK.  Including this post, my last 3 are specifically related to vector-based maps using D3 and TopoJSON.  I’ve taken the maps a step further to include a new layer in the Choropleth Maps, as well as a new component called Location Intelligence maps which allows you to plot by latitude and longitude instead of by geographical feature.

Below is a preview overview of what is now available from the SCN Design Studio SDK Development Community extension.

What’s New?
The focus for this iteration was placed on new functionality and additional bug fixes.


  • New Features:
    • New (optional) Bubble Measure property now available to your Choropleth Maps which means you can now visualize 2 measures, one by a quantile/quintile color scale for feature shading, and now a second linear scaled Bubble overlay based on a second measure.
    • New Location Intelligence Map that when provided a Latitude and Longitude field, will place plot markers on the map.  A third optional Title field can be given to show the title of the location when the tooltip is shown.
    • More Maps – Added some more European country maps
  • Fixes:
    • Maps used to not work when only one measure was in the data set.  This was an unintentional bug now corrected.
    • Manual Map Data changes can be done in text box and updates now in Design Studio.
    • Fixed issue with maps that use diacritics.  Design Studio property storage seems to have limitations on certain character set encoding.
  • To Do:
    • Location Intelligence Maps onclick event for plot markers.
    • Optional Data-driven Marker Size by Measure (Effectively allowing a marker to become a Bubble)

What’s New for SDK Developers?

  • Choropleth Map Component now inherits from a Base Map Class
  • Location Intelligence Map now inherits from said Base Map Class.

View of 2 Location Intelligence Maps followed by 2 Bubble Overlay in Choropleth Maps:


/wp-content/uploads/2015/03/maps_5_671994.png

This is available NOW from the SCN Design Studio SDK Development Community link.

Questions/Comments/Feedback always welcome.

Enjoy!

Assigned Tags

      21 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Karol Kalisz
      Karol Kalisz

      Mike, your progress on complex stuff is unbelievable πŸ˜‰

      Author's profile photo Former Member
      Former Member

      Mike - Truly amazing.. I am yet to try.. BTW - does it support on mobile?

      Author's profile photo Mike Howles
      Mike Howles
      Blog Post Author

      Yes, it works in Design Studio preview mobile mode (the QR Code scanning test method) as well is on BI Mobile App per my testing.  FYI - I've only got a (now ancient) iPad 3rd gen (the first to have Retina display) so it's a bit sluggish but I did have 3 high vertex count maps in my test and I didn't disable transition animations etc.  I'm sure more recent iPads or mobile dashboards with less maps going on will perform much better than for me.  Below is an example from the BI Mobile app:

      image1.PNG

      Author's profile photo Robert Tullius
      Robert Tullius

      Hi Mike,

      thanks for that great and fast developing solution. The feautures are just awesome. I am really looking forward to DS 1.5 and if SAP's standard map features will come anywhere close to your solution.

      However, since installing the latest version of GVIS the system keeps telling me that I need to install the "Standard map pack", as you moved some components. Unfortunately I have no idea what the "standard map pack" is or where to find it. Maybe I am just blind. Can you please give me a hint?

      Regards,

      Robert

      Author's profile photo Former Member
      Former Member

      Well I have installed "standart map pack" from here sdkgeovis/archives at master · org-scn-design-studio-community/sdkgeovis · GitHub but still have the same system warning (and Mike's promised error after it πŸ˜‰ ). And I also want to know how to fix it.

      Author's profile photo Mike Howles
      Mike Howles
      Blog Post Author

      Hey guys, sorry about the confusion!  I'm frankly surprised anyone was able to use the old "Part 1" leaflet maps I made.  I had the impression they were too buggy and incomplete for anyone to use effectively.

      To be honest, I lost interest in the old "Part 1" maps and they were taking up way too much space in the plugin pack so I moved the geolookup content to the optional 'Standard Map Pack' which is outside of the SCN plugins feature to free up the room.  Can you guys try to download that one from here and let me know?

      sdkgeovis/archives at master · org-scn-design-studio-community/sdkgeovis · GitHub

      Perhaps to eliminate the whole experimental part 1 'geovis' plugin, I should move all pieces to the independent map pack to eliminate any confusion.  I will gladly keep this older one on "life support" in an independent package.

      What do you think?

      PS with DS 1.5 coming soon and maps coming with it I feel that the "Part 1" tile based maps functionality may no longer be needed, but time will tell!

      Author's profile photo Robert Tullius
      Robert Tullius

      Hey, actually we are just playing around and test all the features that your plugin provides. I think our future focus will be on vector based maps for dashboards and mapping with e.g. openstreetmap / geo coordinates for other use cases like customer or equipment locations.

      Author's profile photo Mike Howles
      Mike Howles
      Blog Post Author

      Hey Robert,

      Thanks for the feedback.  It's nice to hear how folks are playing with these components.  It helps me know what's maybe more useful to chip away at.

      FYI - I still have high interest in vector maps (if parts 2, 3 and 4 didn't make obvious!) so I think this is an area where I'll chase further as ideas come up.  This part 4 focused on the location-based example so you should be able to plot points, etc.

      I have had thoughts of incorporating basic tile functionality into these vector maps as illustrated here:

      Zoomable Map Tiles

      This would only make sense if the geographic projection was Mercator, but maybe useful?

      Author's profile photo Robert Tullius
      Robert Tullius

      Hey,

      In my opinion a nice to have feature, but nothing that I would miss if it wasn't there. At least from my current point of view - and that changes from time to time according to our internal customer's expectations πŸ™‚ .

      If any feature I miss comes into my mind I'll let you know.

      Regards,

      Robert

      Author's profile photo Former Member
      Former Member

      As for me Choropleth Maps with bubbles-markers on it is enough (especially if you plan to add clustering of bubbles). But I didn't get it on my map project. It looks like all the bubbles just placed in one point (0,0) in left upper corner despite the fact that all of them have different coordinates. So maybe I do something wrong./wp-content/uploads/2015/04/img_677045.png

      Author's profile photo Mike Howles
      Mike Howles
      Blog Post Author

      Hey Dmitry,

      Can you share a sample screenshot of your data?  Or just confirm your Latitude column is titled 'Latitude' and same for Longitude?  Maybe they are named something else or reversed?  Basically if the projection cannot figure out the lat/lng, OR the lat/lng is not within the planar space of the projection area, it'll resort to planar 0,0 (top left as in your screenshot).

      A sample screenshot may help us see more if you can just show the rows/cols.

      Author's profile photo Former Member
      Former Member

      Michael,

      First of all I have a lot of checked points where I suppose the reason was.))) You listed most obvious of them.))) And now be sure - yes columns names are 'Latitude' and 'Longitude' and they placed correctly. I even tried to use different types of that cols (real num, char with delimiter '.', char with delimeter ','). I should use the real world geo coordinates for map, isn't it? Or maybe it means some relative values for each different map? Is everything really simple to use as I imagine - just need add data source with coordinates, choose map and it'll be ready as a start, or there is a something special config I need to do? Thx!

      And here is scan of data. Why not πŸ˜‰ ./wp-content/uploads/2015/04/img_677090.png

      Author's profile photo Mike Howles
      Mike Howles
      Blog Post Author

      Ah, a few things...  Your lat/lng is using commas instead of decimals.  I presume this may be a locale thing and also because you might be storing lat/lng as measures instead of as dimensions.

      My component will be looking for lat and long as dimensions and not as measures, and also will be expecting decimals and not commas.  I think this is the issue.

      If you want to mock up the data to be sure, you can do so in the BYO Data component:

      /wp-content/uploads/2015/04/ll1_677071.png

      Example based on your first 2 rows using BYO Data with the map:

      /wp-content/uploads/2015/04/ll2_677105.png

      Author's profile photo Former Member
      Former Member

      Michael!

      it's working now on BYO DATA. Likely you right about locale thing (Π°nd of course I use dimensions). Trying to make usable data source and switch your component on it.

      Thank you for operative answer!

      Author's profile photo Former Member
      Former Member

      Thanks a lot Michael, it absolutely works now. By the way why don't you use lat/lng as a measure considering a fact this values work as a usual decimal parameters? I mean that you can count aggregated values such as a average and use it for show as a cluster of several intersected bubbles.

      Author's profile photo Mike Howles
      Mike Howles
      Blog Post Author

      Glad to hear it's working.  I could support lat/lng as measure fields also I suppose, however I think storing lat/lng as Measures/Key Figures in the case of BW would not make sense because of the locale issues and also they should never roll up as Measures do, so I just didn't want to make it messy.  If you wanted to do an aggregated count of lat/lng points actually it would work out better to have lat and lng as dimensions/nav attributes and use a counter to have a bubble grow.

      Author's profile photo Mustafa Bensan
      Mustafa Bensan

      Hi Mike,

      Aren't the standard BW latitude and longitude attributes defined as key figures (measures) though?:

      BW_LONGITUDE.png

      Mustafa.

      Author's profile photo Mike Howles
      Mike Howles
      Blog Post Author

      Yes, and also aggregation is set to SUM which is just weird to me but whatever.  I think often they are used as Attributes for Master Data cases like here:

      /wp-content/uploads/2015/04/ll_684487.png

      Author's profile photo Mustafa Bensan
      Mustafa Bensan

      Yes, that is how the master data is set up in my BW demo system.  So will the standard 0LATITUDE and 0LONGITUDE attributes work with map component?

      Author's profile photo Ingo Hilgefort
      Ingo Hilgefort

      Hi Mustafa,

      Attributes are not yet in the SDK. those are coming with 1.5

      ingo

      Author's profile photo Mike Howles
      Mike Howles
      Blog Post Author

      If they are marked Navigational, yes.

      And before it's said, we've already heard "marking them as Navigational Attributes would have a huge performance impact on the overall cube." although I've not personally experienced that.