NCL Home > Documentation > Graphics > Graphical Interfaces


Creates and draws a map.


load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"  ; These two libraries are automatically
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"   ; loaded from NCL V6.2.0 onward.
                                                          ; No need for user to explicitly load.

	function gsn_csm_map (
		wks [1] : graphic,  
		res [1] : logical   

	return_val [1] :  graphic



A Workstation identifier. The identifier is one returned either from calling gsn_open_wks or calling create to create a Workstation object.


A variable containing an optional list of plot resources, attached as attributes. Set to True if you want the attached attributes to be applied, and False if you either don't have any resources to set, or you don't want the resources applied.

Return value

A scalar id of the map plot created is returned. This is useful if you want to use setvalues to change some plot options after this function has been called.


This function creates and draws a map plot on the given workstation. The default projection is a cylindrical equidistant, which you can override by setting the mpProjection resource.

Important note: in NCL version 6.4.0, the mpDataBaseVersion resource was updated from having a default of "LowRes" to having a default value of "Dynamic". The "LowRes" database will still be the default, unless either of the boundary-set resources mpFillBoundarySets or mpOutlineBoundarySets are set to anything other than "Geophysical", in which case the "MediumRes" database will be used. See the map outlines page for example scripts.

For the map, the following graphical resources will be set internally, which are different from NCL defaults:

  • res@mpOutlineOn = False
    (turn off continental outlines)
  • res@mpFillOn = True
    (turn on map fill)
  • res@mpFillColors = (/"background","transparent","LightGray","transparent"/)
    (fill land in gray and ocean in transparent)
  • res@mpGridAndLimbOn = False
    (turn off lat/lon grid lines)
If you turn off map fill (res@mpFillOn = False), then the continental outlines will automatically be turned back on.

A series of other resources will be set internally to label the latitude/longitude locations (cylindrical equidistant and polar stereographic maps only) and to point the tickmarks outward (cylindrical equidistant map only).

Here's comparison between using a "gsn_csm" mapping function, and a generic "gsn" function (click on either thumbnail for a larger view):

gsn_csm gsn generic

To maximize the area that the plot is drawn in, set the special resource gsnMaximize to True.

See Also

gsn_map, gsn_csm_map_ce, gsn_csm_map_polar
Special gsn resources


For some application examples, see:

For some application examples, see the map suite of examples.