Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
rbecher
MVP
MVP

OpenStreetMap Extension Object

This is an extension object which I made out of Alexander Karlsson's Google Map extension:

http://community.qlik.com/message/153412

It uses the CloudMade.com Web API to display OpenStreetMap tiles. This is a first version with marker custers and automate positioning dependend from the data selection. You can zoom and drag inside the map.

The extension needs Lat/Long as dimension and a marker label as expression, as you can see in my demo app. It was tested with QV11.

QlikView_foursquare.png

Any feedback is very welcome!

- Ralf

Caution: I have to mention here that a demo API key is used in the extension. If you realy want to use this in a production environment you should get your own personal API key at: www.cloudmade.com

Update: Alexander and I have improved slightly. Now you can enter the API key in the properties pane and you can switch the markers clustering

Astrato.io Head of R&D
56 Replies
chriscammers
Partner - Specialist
Partner - Specialist

I've been working on a modification to this that will provide different markers based on an additional dimension provided to the extension. I am looking at the Cloudmade site and I will address this question to them as well but when I get my own api key will I suddenly start seeing advertizing on the map. I assume I will have to get the "Select" license to avoid showing the ads.

I'm not looking for a detailed legal explanation of what we are obligated to purchase or display but your demo key does not show any ads and I am just wondering what to expect? I want to make sure I have my expectations aligned with reality.

Thanks

rbecher
MVP
MVP
Author

Hi Chris,

my API key has the Plan "Web Free" and the state "Unpublished". Maybe this helps..

- Ralf

Astrato.io Head of R&D
Not applicable

Thanks for a great plugin!

Just one question though. I have customers with a zip code which I translate to longitude and latitude using a script. Therefore alot of my customers get the same longitude and latitude. These are only shown as one customer on the map. Is there any solutionto this?

rbecher
MVP
MVP
Author

Hi,

maybe you can add a fraction of lat/long per client to spread the markers?

- Ralf

Astrato.io Head of R&D
Not applicable

Hi Ralf,

Thanx for the tip! Do you have any suggestions on how to do this. I right now have a load for customers and map data that looks like this:

Customers:

LOAD Customer,

     PostalNumer,

     Sales

FROM

data.xlsx

(ooxml, embedded labels, table is sheet1);

MapData:

LOAD @2 as PostalNumer,

     @10 as Latitude,

     @11 as Longitude

FROM

[..\Downloads\SE (1)\SE.txt]

(txt, utf8, no labels, delimiter is '\t', msq);

Thanks in advance!

rbecher
MVP
MVP
Author

Btw. do you use the field Customer in the property Measurement?

Astrato.io Head of R&D
Not applicable

Right now i use sum(Sales) as measurement. But i might aswell use Customer.

rbecher
MVP
MVP
Author

If you use sum(Sales) all sales on the geo point will be aggregated. So, you will see only one marker per zipcode.

If you use Customer (-name) as measure you should see some amount of markers at one geo point (correspondingto the amount of customers at this zip code) ..

Astrato.io Head of R&D
Not applicable

Hello all,

can someone tell me how to make it possible to select markers in the map?

When I select a value in a field (in my version it is a cave) it will be selected in the map. But if I select a marker in the map I can only see the name of the cave in the map, the cave will not be selected in the field "caves".

The table caves has the fields name, lat, lon, description etc, the measurement in the map is defined as =[name].

I use my own API  Key.

regards

Astrid

rbecher
MVP
MVP
Author

Hi Astrid,

if a marker is clicked the selection is made on the first dimension (latitude). You would see this in a selection box.

I know this is not a perfect solution. Maybe someone can help to improve this..

- Ralf

Astrato.io Head of R&D