Custom Map Widget



  • Avatar
    Jason Sweezey

    I managed to get my map loaded with a series of neighborhood boundaries across major cities in the U.S.  People can perform searches in our system using a neighborhood as a reference.  We'll aggregate the number of searches per neighborhood daily.  What we'd like to show is how many searches were performed by neighborhood for a given time frame.  I've got that part working so that neighborhoods are highlighted and the tooltip shows the search count.

    But it only shows the neighborhoods that have transactions.  What I'd prefer is to show all neighborhoods then color-code those with transactions (kind of like the example above where all of the counties in New England are in blue but a couple of counties are highlighted in green).  Is there a way to do that without creating a record for each neighborhood in my Elasticube?




  • Avatar
    Takashi Binns

    Hi Jason,

    It sounds like this is more of a data modelling exercise than anything else.  Can you try modeling your Elasticube to include a LEFT JOIN between your neighborhoods table and transactions table?  This will ensure all neighborhoods will be shown, regardless of whether or not there is a transaction.  Then you can add conditional coloring in the widget, to differentiate visually.

  • Avatar
    Jason Sweezey

    Thanks Takashi.  Right now I have a table of transactions, with each transaction containing a date, a neighborhood and an ID.  I then use the chart to summarize the number of transactions by neighborhood.  I'm not quite sure where I would insert the LEFT JOIN.  Could you provide a bit more color on what you had in mind?

  • Avatar
    Takashi Binns

    Hi Jason,

    Lets assume your Elasticube has a table [Transactions] and [Neighborhoods], and they are linked off a [neighborhoodId].  You can create a Custom SQL Expression in your Elasticube that looks like this

    SELECT *, COALESCE(t.transactionId,1,0) as [Transaction Count]

    FROM [Neighborhoods] n

         LEFT JOIN [Transactions] t ON t.neighborhoodId = n.Id

    This will create a new result set that has all transactions, but also lists neighborhoods with no transactions.  The new [TransactionCount] column will have a value of 1 for every transaction and 0 when there is no transaction, so your dashboard can just SUM this field.

    Hope this helps!


  • Avatar
    James Matthiesen (Edited )


    I'm a relatively new user working with the custom map plugin for the first time. Is there any way allow a viewer to dynamically change the value displayed on the map, ex. to switch from "total population" to "average income", in a way similar to the Measure Changer plugin?

    Currently I am using the Measure Changer plugin in other dashboards and I think it adds critical functionality to my dashboards.

    It would be really nice to be able to do the same thing with the map widget. In my experience with map visualizations, particularly exploratory analysis, users are often interested in multiple values, but displaying/creating a map for each value (perhaps through the Tabber) becomes cumbersome as the number of values increase. Does anyone know how to solve this bottleneck?

  • Avatar
    Yoni Lerner

    Hi James,

    There is no option within the plugin, what I will suggest is to create two different widget and "combine" them into one widget using the TABBER widget 

  • Avatar
    Luke Evans

    I'm having a problem converting custom shape files (we have ESRI GIS tools) into geoJSON files for this widget.  Does anyone have a reference guide on how to properly export it for Sisense consumption. 

  • Avatar
    Ramon Lopez

    Hi Luke:

    I've used various internet converters to make this transformation succesfully.  The one thing to look for is ensure that there is only one feature in the file (one layer).  I had some scenarios where i manually cleaned up the file to have one feature. 

    Also make sure that you add the file location to the config and define the Key attribute.

    Let me know if this helps.


  • Avatar
    Brian Wilson (Edited )

    This is a really awesome widget. I've successfully got a 5Digit ZipCode shapefile working!

    It looks like there are a ton of plugins for Leaflet -- Is there any way to get those working? Specifically, I was hoping to insert some pins showing store locations on top of my zip code map or select a different basemap.

  • Avatar
    Sisense License

    I can't get a base map to load for some reason. I am using the public key available from Mapbox API. Here's the configuration file preview:

    prism.customMap = {
    settings: {
    mapboxKey: 'pk.eyJ1Ijoic2FpbWFtb2hzaW4iLCJhIjoiY2o5cXZjNWdrNXpzdTJxbGdlNXp1MTA0NiJ9.QCstTOTyOECsdZ6Sny-jeA',
    urlTemplate: '',
    mapboxId: 'mapbox.streets',
    shapeSeparatorColor: 'white',
    shapeHighlightColor: '#C0C0C0'

  • Avatar
    Vania Charles


    Thank you for this widget. I'm new in Sisense and I want to use this pluggin to create a map. I already create my GeoJSON file and right now I have to modify the config.js. But Where can I find this file?

    Any help will be greatly appreciated. 


  • Avatar
    Oxana Noa Umansky

    Hi Vania, you can find the file here: C:\Program Files\Sisense\PrismWeb\plugins\customMapWidget\config.js

  • Avatar
    Sam Ovenshine

    @Sisense License

    Were you able to get the default base map for the plugin to load (before making any changes to config.js)?

  • Avatar
    nagdev Amruthnath

    This is a great widget. I was wondering if anyone tried this plugin with floor plans or layout plans? I have posted this question in community.


  • Avatar
    Trevis Thomas

    Has anyone found a way to customize the zoom level or positioning of this widget? I have a basic knowledge of JavaScript but I've been unsuccessful so far, and everything I've found on the internet is in relation to the Scatter Map widget. Any help would be fantastic. Thanks!

  • Avatar
    Todd Nash

    This is a great plugin.  We are however experiencing an issue when filtering on the Canadian Map via the widget.  "No Results" are displayed when selecting a territory because our data is in Upper Case and the widget seems to only recognize lower case.  We tested this by changing our source fields to lowercase and were successful under those conditions but would prefer to remain in uppercase if possible.  Is there an easy fix for that by chance?  Thanks in advance for any assistance with this.

  • Avatar
    Andy Son

    Hi all,

    Here's a geojson file you can use for any 3-digit Canadian postal code.

    You can download it here:


Please sign in to leave a comment.