Choose Language Hide Translation Bar
Highlighted
caseylott
Occasional Contributor

Can JMP use custom raster tile packages as map background images?

I am a big fan of using the simple earth map image as a map background. It seems to behave very similarly to an ESRI tile package (.tpk), which can be created from any raster file in ArcGIS. I do a lot of regional land cover analysis in GIS, but I’d prefer to share my results with others using interactive maps and graphs in JMP.

I’d like to be able to create my own custom map images, using my landcover analysis outputs, and then use these as map background images like the simple or detailed earth images that come packaged with JMP.

While JMP can accept ESRI shape files as inputs, it doesn’t seem like there is a similar option for tiled rasters (outside of calling out to a web map service). For performance reasons, I’d much rather used cached tiles on a local machine than a web map service for my background map image.

So, my question is this...

Is there a way to use an ESRI tile package (.tpk) directly in JMP? If not, has anyone figured out how to create custom tiles (at incremental scales) in a format that JMP will accept as a background map image?

Thanks in advance to anyone in the community that can help.
0 Kudos
2 ACCEPTED SOLUTIONS

Accepted Solutions
JohnPonte
Staff

Re: Can JMP use custom raster tile packages as map background images?

So the short answer is no, not really - JMP is not setup to use an ESRI tile package or any custom tiles. That being said, as a hacker - there is always a hack! The Simple Earth and Detailed Earth tiles provided with JMP are just images - generated by taking a rectangular image of the earth and dividing it up into sections. You could do the same.

 

If you look in the install directory for JMP you will see a folder called imagemaps. In there you will see simpleearth and detailedearth and inside each of those folders you will see three more folders - 10x10, 30x30 and 90x90. Think of those as "zoom levels". Each tile in 10x10 covers an area of 10 degrees by 10 degrees. Similarly, 30x30 covers 30 degrees by 30 degrees and 90x90 covers 90 degrees by 90 degrees. Now notice the naming convention. The word tile is followed by two numbers. The first number is the latitude and the second number is the longitude for the upper left corner of the image. Since we start at the upper left, the lower left is down (south - so a lower latitude) and the upper right is across (east - so a higher longitude). So tile_0_0 has an upper left corner at lat 0 and lon 0 and the lower right corner depends on what folder it is in. For the 10x10 folder, the lower right corner would be lat -10 and lon 10. For the 90x90 folder the lower right corner would be lat -90 and lon 90. Make sense?

 

So if you wanted to use your own tiles, you could generate your own tiles in the same fashion. Then replace the tiles in simpleearth (or detailedearth) with your tiles. Be sure to generate the tiles for all three folders since the folder JMP looks in depends on how far out (or zoomed in) the view is. I would suggest not actually deleting the tiles delivered with JMP in case you want to go back to them. Just rename simpleearth to simpleearthORIG (for example) and then create a new simpleearth folder and drop your three levels of tiles in there. When you select Simple Earth as your background map option, JMP will look in the simpleearth folder and find your tiles (although JMP won't know that - or care).

 

Let me know if you try this - or if you have any questions. Good Luck!

 

View solution in original post

JohnPonte
Staff

Re: Can JMP use custom raster tile packages as map background images?

After posting my hack, I discussed this with @danschikore, who directed me to your original post. We came up with the idea of supporting custom raster images similarly to how we support custom boundary shape files. We could provide a folder for the user to dump files into and we use the folder names to add entries to the raster map list. This, of course, would be a new feature request and would have to get approved before I could work on it. But I will submit it.

 

View solution in original post

3 REPLIES 3
JohnPonte
Staff

Re: Can JMP use custom raster tile packages as map background images?

So the short answer is no, not really - JMP is not setup to use an ESRI tile package or any custom tiles. That being said, as a hacker - there is always a hack! The Simple Earth and Detailed Earth tiles provided with JMP are just images - generated by taking a rectangular image of the earth and dividing it up into sections. You could do the same.

 

If you look in the install directory for JMP you will see a folder called imagemaps. In there you will see simpleearth and detailedearth and inside each of those folders you will see three more folders - 10x10, 30x30 and 90x90. Think of those as "zoom levels". Each tile in 10x10 covers an area of 10 degrees by 10 degrees. Similarly, 30x30 covers 30 degrees by 30 degrees and 90x90 covers 90 degrees by 90 degrees. Now notice the naming convention. The word tile is followed by two numbers. The first number is the latitude and the second number is the longitude for the upper left corner of the image. Since we start at the upper left, the lower left is down (south - so a lower latitude) and the upper right is across (east - so a higher longitude). So tile_0_0 has an upper left corner at lat 0 and lon 0 and the lower right corner depends on what folder it is in. For the 10x10 folder, the lower right corner would be lat -10 and lon 10. For the 90x90 folder the lower right corner would be lat -90 and lon 90. Make sense?

 

So if you wanted to use your own tiles, you could generate your own tiles in the same fashion. Then replace the tiles in simpleearth (or detailedearth) with your tiles. Be sure to generate the tiles for all three folders since the folder JMP looks in depends on how far out (or zoomed in) the view is. I would suggest not actually deleting the tiles delivered with JMP in case you want to go back to them. Just rename simpleearth to simpleearthORIG (for example) and then create a new simpleearth folder and drop your three levels of tiles in there. When you select Simple Earth as your background map option, JMP will look in the simpleearth folder and find your tiles (although JMP won't know that - or care).

 

Let me know if you try this - or if you have any questions. Good Luck!

 

View solution in original post

caseylott
Occasional Contributor

Re: Can JMP use custom raster tile packages as map background images?

Hi John, 

 

@JohnPonte Thanks for the quick reply. Everything you said makes total sense to me. It's a great hack! I'll give it a try with my own images sometime in the next month.

 

If this works, I could see repeating this same process quite frequently to create a number of different custom background images for different projects I'm working on. In this case, I'm wondering if there might be a way to add a "select custom background image" option in the dialog box that pops up after right click >graph>background map that would allow me to browse to a different base folder (e.g., "myworld" versus "simpleearth" or "detailedearth)" with the same structure. this way, I could point to a background map in a different folder for each new graph rather than having to move new title folders into the simpleearth folder each time to trick JMP. I guess this sounds kind of like a feature request, but I'd be interested in you have any ideas for a hack that might achieve the same outcome.

 

You've definitely answered my original question and I'll be interested to hear what you or others say to this second question. Thanks a ton!

0 Kudos
JohnPonte
Staff

Re: Can JMP use custom raster tile packages as map background images?

After posting my hack, I discussed this with @danschikore, who directed me to your original post. We came up with the idea of supporting custom raster images similarly to how we support custom boundary shape files. We could provide a folder for the user to dump files into and we use the folder names to add entries to the raster map list. This, of course, would be a new feature request and would have to get approved before I could work on it. But I will submit it.

 

View solution in original post