
NCL Home >
Documentation >
Functions >
NCL object routines
NhlClassName
Retrieve the class name of one or more NCL objects.
Prototype
function NhlClassName ( objects [*] : graphic ) return_val [dimsizes(objects)] : string
Arguments
objectsAn array of one or more instances of NCL objects. NCL objects are created by using one of the many gsn functions, or by calling the NCL create language construct.
Description
This function returns an array of strings which are the class names of each object of the objects array. This function is useful if you need to know what kind of object you have, so you can set or retrieve some resources based on it.
See Also
Examples
Example 1
This example creates a simple XY plot, and then prints the class name of two of its objects:
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl" begin ; ; Create workstation. ; wks = gsn_open_wks("x11","test") ; ; Create a data object. ; npts = 500 x = fspan(0,npts-1,npts) y = 500.+ 0.9 * x * sin(0.031415926535898*x) xy = gsn_xy(wks,x,y,False) print(NhlClassName(wks)) ; Should be "xWorkstationClass" print(NhlClassName(xy)) ; Should be "xyPlotClass" end
Example 2
This example sets a different color map depending on what kind of workstation is opened:
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl" load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl" begin ; ; Create a simple bull's eye pattern test data set ; M = 25 N = 25 T = new((/N,M/),float) jspn = ispan(-M/2,M/2,1)^2 ispn = ispan(-N/2,N/2,1)^2 do i = 0, dimsizes(ispn)-1 T(i,:) = ispn(i) + jspn end do T = 100.0 - sqrt(8^2 * T) ; ; Start the graphics section. ; wks = gsn_open_wks("x11","bullseye") ; ; Change the colormap based on the type of workstation ; you have. ; if(NhlClassName(wks).eq."psWorkstationClass".or.\ NhlClassName(wks).eq."pdfWorkstationClass") then gsn_define_colormap(wks,"rainbow") else gsn_define_colormap(wks,"BlueRed") end if cnres = True cnres@gsnMaximize = True cnres@cnFillOn = True contour = gsn_csm_contour(wks,T,cnres) end