Q: It takes a long time to make a plot with the 'intermediate' or
'high' resolution coastlines, how can I speed it up?
A: There is a overhead in processing boundary datasets when
a Basemap class in created, and this overhead can be significant
for the higher resolution boundaries. If you are makeing many maps
for the same region, you only need to create you Basemap class instance
once, then re-use it for each plot. If the plots are being created by
different scripts, you can save the Basemap class instance to a Pickle on
disk, then read it in whatever script needs it (it's much faster to read
a pickle from disk than it is to create the Basemap instance originally).
The ireland.py example illustrates how to do this.
Q: I have my own boundary dataset that I would like to use, how do I
use it in place of (or in addition to) the built-in basemap boundary datasets?
A: If your dataset is in ESRI shapefile format, this is relatively easy.
Just create your Basemap class instance, then call the 'readshapefile'
method on that instance to import your data. Setting 'drawbounds=True' will
draw the boundaries in the shapefile. The fillstates.py example
shows how to do this.
Q: How do I specify the map projection region if I don't know what the latitude and
longitudes of the corners are?
A: As an alternative to specifying the lat/lon values for the upper-right and
lower-left corners of the projection domain (using the llcrnrlat, llcrnrlon,
urcrnrlat and urcrnrlon keywords) you can specify the center of the map projection
domain (using the lat_0 and lon_0 keywords) and the width and height of the domain
in map projection coordinates (meters) using the width and height keywords.
Basemap will then calculate the corresponging values of llcrnrlat, llcrnrlon,
urcrnrlat and urcrnrlon. Examples of this are given in the garp.py and setwh.py
examples.