NCL Home > Documentation > Graphics > Graphical Interfaces


Creates and draws a streamline plot over a cylindrical equidistant map, using a scalar field to color the streamlines.

Available in version 6.3.0 and later.


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_streamline_scalar_map_ce (
		wks     [1] : graphic,  
		u    [*][*] : numeric,  
		v    [*][*] : numeric,  
		data [*][*] : numeric,  
		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.


The u and v data for the streamline plot; must be two-dimensional.


The data field for which to color the streamlines by; must be one- or two-dimensional.


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. The id of the streamline plot is returned as an attribute called streamline. The id of the data object is returned as an attribute called vfdata, and the id of the scalar data object is returned as an attribute called sfdata. This is useful if you want to use setvalues to change some data options after this function has been called.


This function creates and draws a streamline plot over a cylindrical equidistant map on the given workstation. The scalar field is used to color the streamlines. Note that the gsnScalarContour resource is NOT recognized by this routine. If you need to overlay streamlines on a contour plot, then use gsn_csm_contour, gsn_csm_streamline_map, and overlay.

The special resource gsnAddCyclic will be set to True so that a cyclic point will be added to the data. Set this resource to False if your data is not cyclic, or if you have already added the cyclic point in another fashion.

The map will be centered at longitude 0 unless you set the resource mpCenterLonF to the desired center longitude.

If u, v, or data have a _FillValue attribute, these values will be used as missing values.

If you want to turn the labelbar off, set lbLabelBarOn to False.

For the map, the following will happen automatically:

  • the continents will be colored gray
  • the continental outlines will be turned off
  • the latitude/longitude locations will be labeled (cylindrical equidistant and polar stereographic maps only)
  • the tickmarks will point outward (cylindrical equidistant map only)

If u has an attribute called "long_name", and gsnLeftString hasn't explicitly been set, then the value of this attribute is used for the left string title.

If u has an attribute called "units", and gsnRightString hasn't explicitly been set, then the value of this attribute is used for the right string title.

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

See Also

gsn_csm_streamline, gsn_csm_streamline_scalar, gsn_csm_streamline_contour_map, gsn_csm_streamline_contour_map_polar, gsn_csm_streamline_map, gsn_csm_streamline_scalar_map, gsn_csm_streamline_scalar_map_polar, gsn_csm_streamline_map_polar, gsn_streamline, gsn_streamline_scalar, gsn_streamline_scalar_map, gsn_streamline_map, gsn_csm_pres_hgt_streamline

gsn_csm_contour, gsn_csm_contour_map
Special gsn resources


;---Read in 2D data only
  uvf = addfile("$NCARG_ROOT/lib/ncarg/data/cdf/941110_UV.cdf","r")
  pf  = addfile("$NCARG_ROOT/lib/ncarg/data/cdf/941110_P.cdf","r")
  u   = uvf->u
  v   = uvf->v
  p   = pf->Psl

  wks = gsn_open_wks("x11", "streamline")

  res                        = True                           ; plot mods desired
  res@gsnMaximize            = True
  res@gsnAddCyclic           = False

  res@stLevelPalette         = "SVG_Lindaa07"
  res@stLineThicknessF       = 3.0

  res@stLevelSelectionMode   = "ExplicitLevels"
  res@stLevels               = ispan(950,1040,5)

  res@stLevelPalette         = "GMT_split"

  res@tiMainString           = "Example of a streamline/scalar/CE map plot"

  plot = gsn_csm_streamline_scalar_map_ce(wks,u,v,p,res)