Mapping Toolbox | ![]() ![]() |
Map Axes
To display maps of any kind in the Mapping Toolbox, the user must first define a map axes. A map axes is a normal axes that has been prepared for mapping using the axesm
command that defines the map projection properties. Before you execute any mapping command, you need to define a map axes in the current MATLAB axes and choose a map projection using axesm
.
A projection is the systematic means of representing three-dimensional geographic data in two dimensions, a topic that is covered more extensively in Map Projections. Here, it is sufficient to understand that many different projections are available, each with different features. Some projections maintain correct relative area between objects, for example, or correct angular relationships. Some are well-suited to displaying features at certain latitudes or with certain orientations. The command maps
displays a list of available projections.
When creating a map axes object, you must define its projection by using an appropriate ID string. All other properties can be set by default. For example, the following are all valid commands for creating a Miller projection map axes:
Other properties can be set for the map axes during creation as well:
axesm('MapProjection','mercator',... 'Frame','on',... 'AngleUnits','degrees',... 'FontName','courier',... 'parallellabel','on',... 'Origin',[0 180 0])
If you specify some map axes parameters with axesm
, the Mapping Toolbox determines appropriate values for other related map axes properties. As an example, create a map axes with an Equal-Area Conic projection for part of the world:
axesm('MapProjection','eqaconic',... MapLatLimit',[30 60],... MapLonLimit',[-15 45],... MapParallels',[])
The axesm
function will automatically set the origin and frame limits for a map centered on the limited geographic region, with the results of subsequent mapping display commands shown only within the specified limits. Empty matrices are used to force recalculation of a property or a return to the default value. For example, setting the map parallels to an empty matrix will automatically determine map parallels appropriate for the current map limits, minimizing distortion in the projection.
Since the MapProjection
property is the only property that must be explicitly set, it can be specified without the property name, as long as the projection name is the first argument in axesm
. For instance:
The axesm
command without any arguments activates a GUI that allows for easy manipulation of the map axes properties.
For proper map appearance and ease of use, the Mapping Toolbox changes some of the default MATLAB axes properties. The altered properties are:
NextPlot
property is set to 'add'
.
UserData
property contains the map projection structure that defines the specific map axes properties.
Box
property is set to 'on'
.
ButtonDownFcn
property is set to the function uimaptbx
, which processes callbacks for Mapping Toolbox objects.
showaxes off
is executed to remove axes ticks from the MATLAB Cartesian axes (i.e., the XTick
, YTick
, and ZTick
properties are set to empty matrices).
More information on MATLAB axes properties can be found in the "Axes" section of Using MATLAB Graphics. The map axes properties are defined under the axesm
reference page in the online Mapping Toolbox reference documentation, while information on the use of the axesm
GUI can be found in the "GUI Reference" chapter in the online Mapping Toolbox reference documentation.
![]() | Map Displays Made Easy | Accessing and Manipulating Map Axes Properties | ![]() |