Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

How do I create a static map where the scale varies based on location?

Example: to drive from a specific location X in Albuquerque to a specific location Y in Chicago, I want to "zoom" around X and Y as follows:

  • Near X and Y, the scale is fairly large, so you can see minor streets, buildings, etc, near X and Y.
  • Far away from both X and Y, the scale is fairly small, so you might just see long lengths of highway, but no details.

In other words, it's like a regular map with a "magnifying glass effect" around X and Y. The effect should "fade off" smoothly, so there isn't a break in the map.

Reasoning: when traveling between remote cities, the highway travel is often easy (in the sense it doesn't require details), but getting from X to the highway and from the highway to Y can require detailed instructions, knowing minor streets, etc.

EDIT: I've attached a horrible example of what I want to do. Notes:

  • This only zooms in on one city, not two.
  • This is just plain old image zoom. What I would want is more detail in the Albuquerque area.
  • Notice, however, that the roads/highways are continuous: the magnifying does not have a "cutoff" problem.

alt text

share|improve this question
1  
I think we would need more information. Like the software, level (web/desktop), language (gui or code). fill in the blanks and we will sure try to help. –  Brad Nesom Dec 16 '10 at 1:59
    
I'm pretty much open re the technology... data from openstreetmap.org for example and piecing it together using anything from fly/libgd to something more sophisticated. I guess my real question is: in a language-neutral way, how would you go about doing this? Once I have the general idea, I think I can proceed on my own. –  barrycarter Dec 16 '10 at 2:06
add comment

6 Answers

up vote 12 down vote accepted

This document presents an algorithm to do that:

Harrie, L., Sarjakoski, T., Lehto, L. A variable-scale map for small-display cartography. In: Joint International Symposium on GeoSpatial Theory, Processing and Applications (ISPRS/Commission IV, SDH2002). Ottawa, Canada, july 2002

An example:

alt text

EDIT: This kind of representation is quite old. See the plan Conrad Morant (1548):

alt text

share|improve this answer
    
ien: interesting paper. have you seen this algorithm applied in some software/web platform? –  radek Dec 16 '10 at 9:38
    
I don't know. A prototype seems to have been developed, but I don't know on which platform and how it is available. This work was part of a research project called 'GiMoDig'. –  julien Dec 16 '10 at 12:24
    
This is exactly what I'm trying to do, thanks! I will read the paper and see if I can implement it. –  barrycarter Dec 16 '10 at 17:19
    
Happy to help ! –  julien Dec 16 '10 at 17:22
1  
Here is a protoype I have developed: opencarto.goldzoneweb.info/index.php?id=european-regions –  julien Mar 3 '12 at 0:55
show 1 more comment

Not exactly an answer but you might want to have a look this indiemaps blog post with several interesting examples.

share|improve this answer
add comment

I think you are looking for Microsoft's Line Drive service http://msdn.microsoft.com/en-us/library/cc514631.aspx which produces maps like

alt text

You can read the original paper that it is based on at http://cs.ubc.ca/~tmm/courses/cpsc533c-03-spr/readings/rtmaps.pdf

share|improve this answer
    
Excellent! Thanks. –  julien Dec 16 '10 at 17:10
    
Thanks! This is pretty close to what I'm looking for. It might be nice to see some structures as well (though seeing the "points of interest" really is helpful). –  barrycarter Dec 16 '10 at 17:18
    
I think that the paper gives the necessary step to build the map and then you could add POIs and structures as you require. –  iant Dec 16 '10 at 17:20
add comment

Flash http://www.richtersveld.net/index.php/site/region_map/

you can blend a more detailed image inside the magnifying glass.

share|improve this answer
    
Barrycarter is looking for a smooth "fade off", so there shouldn't be a break in the map. –  underdark Dec 16 '10 at 10:06
add comment

The easiest thing I can think of is to use multiple data frames in ArcMap. 1 for the highway overview, and one for each of the detail views at the end points. Arrange them as you like in the layout view, and set the zoom scale or extents appropriately. I've never worried about a smooth fade out, and that won't be available in ArcMap.

If this is close to what you are looking for, I can provide more details.

share|improve this answer
    
If it's not too much work, could you show me an example of what the result would look like? –  barrycarter Dec 16 '10 at 15:16
    
@barrycarter, it would look similar to Pablo's answer, with discontinuities. –  Regan Sarwas Dec 16 '10 at 15:59
add comment

Since the maps are static, you can do some artwork to get nicer results. Here to solve that problem I overlay maps with different scales. Depending on the GIS that you use you can do that in many ways. One is to generate a large map and save, than generate small zoom maps and save, then combine them in a software like Inkscape or Illustrator and clip the zoom map in the desire shape. Look at the simple example made with Qgis and Illustrator. alt text.

share|improve this answer
    
However, I notice the roads "break" between the inset and the main map. It also appears the inset is a constant scale. I think the only way to get continuity is to have the "inset's" scale different at each point in the inset. –  barrycarter Dec 16 '10 at 15:18
    
I did some research and I think that the lens effect in corel draw can do what you want, unfortunately I don't have corel here. –  Pablo Dec 16 '10 at 17:29
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.