Glossary of NCAR Graphics terms

Definitions that are specific to a particular part of the package are prefaced accordingly. For example, definitions that apply only to NCL are prefaced with NCL: .

A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z


A viewable object whose location and usually size are set relative to the viewport or data coordinate space of a base plot. There are three kinds of annotations: intrinsic annotations, embedded annotations, and external annotations.
annotation functions
The functions used to add and remove annotations to and from plot objects. Specifically, these functions are NhlAddAnnotation and NhlRemoveAnnotation for the C and Fortran interfaces.
annotation plot
An annotation that is a plot object and not simply a viewable object. An annotation plot is a subordinate base plot.
The American National Standards Institute, an independent non-profit organization that creates and publishes U.S. national standards (such as Fortran, C, CGM, and so forth) taking input from all sectors of the technical community and the public at large. ANSI also works in collaboration with other standards organizations such as ISO (the International Standards Organization) and IEEE (the Institute of Electrical and Electronics Engineers).
Application Programming Interface.
A program written in C, Fortran, or NCL that utilizes any of the functionality of NCAR Graphics.
application class
Refers specifically to the class App. Objects that are instances of this class are used to keep track of resource databases. Every application must create at least one App object (this will be done automatically for you if you use NhlOpen).
Application Programming Interface
The programming interfaces (C, Fortran, and NCL) to the NCAR Graphics package. These interfaces provide access to the support functions defined in the classes as well as provide additional useful functionality.
application resource file
A resource file that is specific to a particular application. There are two application-specific resource files: a system application-specific resource file and a user application-specific resource file. The user can specify what directories the application-specific resource files are in. By default, the user application-specific resource file is in the local current directory and the system application-specific resource file is in the directory specified by the setting of the environment variable NCARG_SYSAPPRES. Resources defined in the user application-specific resource file will override resources defined in the system application resource file.
area fill pattern
A pattern to use for filling a polygonal area. The patterns are selected by using an integer fill index into a table of patterns.
Stands for "American Standard Code for Information Interchange." This is an ANSI Standard specifying a set of 128 characters with their associated coded integer representations.
ASCII file
NCL: A data file that contains integers or floating point data values in ASCII format.
aspect ratio
Specifies the height-to-width ratio of a plot. This term is also applied to characters. For example, characters with an aspect ratio of 2.0 are twice as tall as they are wide.
associative operator
A binary operator that obeys the law of associativity: i.e. a binary operator "R" such that (aRb)Rc = aR(bRc) for all legal operands a, b, and c.
NCL: A singly-dimensioned datum of any type that is assigned to a variable using the ' @ ' operator. An attribute of a variable contains descriptive information about the variable.


background color
The color that will be used as a background color for the entire viewable surface of a physical workstation when plots are drawn on it.
base plot
A plot object responsible for setting the viewport of zero or more plot members relative to its own viewport. There are two kinds of base plot: primary base plots and subordinate base plots. At creation, any plot object is a primary base plot. A plot object ceases to be a base plot when added to another plot object as an overlay. When added as an annotation a plot object becomes a subordinate base plot. A plot object must be a primary base plot for users to draw it or change its workstation.
binary file
NCL: A data file that contains integer or floating point data stored in a format not supported by NCL.
bounding box
For View class objects, the bounding box for such objects is the smallest rectangle in NDC space that contains all of the marks that would appear on an output workstation if the object were drawn.


Computer Graphics Metafile.
A relationship that holds between objects. If "A" and "B" are objects, then B is a child of A provided that when B was created, A was specified as being its parent (either in the fourth argument of an NhlCreate call, or in a NCL create expression), or B was made a child of A by using the NhlChangeWorkstation function. If B is a child of A, then the following conditions apply:
    1. B inherits the resource database of A. If viewable, B will display to the same workstation as A; if A is a workstation, then B will draw to A.
    2. Destroying A will destroy B.
    3. Resources can be specified in resource files as: {App obj name} . {parent of A} . {Name of A} . {Name of B} . {resource of B} : {value}.
A child can have only one parent. See also parent.
child/parent hierarchy
The tree structure determined by the child/parent relationship existing among all current objects in an application. A child can have only a single parent, but a parent may have many children. The child/parent hierarchy should not be confused with the class hierarchy. See also class hierarchy.
A template for defining objects that specifies variables, and procedures that operate on those variables. In the context of the NCAR HLU library, the class variables are called resources and the class procedures are called support functions. Objects are members, or instances, of a class formed by assigning specific values to the variables in the class.
class hierarchy
Each class, except the base class, is derived from some other class. The tree structure determined by the derived-class/superclass relationships among all of the classes is called the class hierarchy. The class hierarchy should not be confused with the child/parent hierarchy.
color index
See color table.
color map
Same as color table.
color table
A table that associates integer values (called color indices) with RGB color values. In NCAR Graphics, color tables contain up to a maximum of 256 colors (including the background color).
NCL: Same as an NCL statement.
composite class
A class that combines the resources of other classes with its own. A composite class inherits resources and functions from its superclass and it shares the resources from its composite members by the process of resource forwarding. If the composite class members have support functions, these functions do not apply to the composite class.
composite class member
A class used as part of the functionality of a composite class.
composite class resource
A resource available to a composite class by way of resource forwarding from a member class of the composite class.
Computer Graphics Metafile
A graphics metafile is a file that contains encoded vector graphics elements such as lines, colors, dash patterns, markers, and so forth. The Computer Graphics Metafile (CGM) is a precisely-defined formatting for a graphics metafile as defined and standardized by ANSI. NCAR Graphics produces a version of the CGM that is called a conforming private encoding that can easily be converted to and from standard CGM by using the filters ncgm2cgm and cgm2ncgm. The NCAR private encoding is also called NCAR CGM, or NCGM.
coordinate variable
NCL: A value associated with a named dimension of a variable or file variable that contains numerical coordinate information for each index of the dimension. Coordinate variables must be singly- dimensioned values. Warnings are produced if the array of values assigned is not monotonically increasing or decreasing.
The NCGM interpreter distributed with NCAR graphics.


dash pattern
A pattern (such as "solid", "dotted", and so forth) to use as a line style when lines are plotted using the draw function. Dash patterns are selected by using an integer index into a table of dash patterns.
data classes
Any of the classes that are used to provide user input data to any of the objects that utilize such data. These classes are the CoordArrays class, the CoordArrTable class, and the ScalarField class.
data conversion
The process of converting data stored in one format to another format, such as converting data stored as integers to data stored as floating point numbers. Some objects, such as ScalarField, perform automatic data conversions.
data coordinate space
The coordinate space that is appropriate to input data. Transformations can be effected between data coordinate space and NDC (see Normalized Device Coordinates).
data specific resource
A resource of a particular class, such as the XyPlot class, that can be used to modify the attributes of data supplied via a DataSpec object. Data specific resources can be used to control attributes such as curve colors, dash patterns, marker sizes, marker colors, and so forth.
data transformation
A process that transforms data from one coordinate space to another, such as transforming data in logarithmic space to data in linear space.
data type
NCL: A data type is a representation of data that defines a size and valid range for numerical data or provides a reference to a file or HLU graphical object.
derived class
See subclass.
drawable object
See viewable object.
draw function
Specifically, either the NhlDraw function of the C or Fortran interfaces, or the draw function of NCL, that is invoked to plot a View object.


embedded annotation
An annotation that may be incorporated as part of the functionality of subclasses of the Transform class. It is managed internally by the controlling PlotManager.
Encapsulated PostScript
Encapsulated PostScript (EPS) is a subset of regular PostScript. The restrictions placed on EPS files are for making it an appropriate format for importing into applications that import PostScript.
Encapsulated PostScript Interchange Format
Encapsulated PostScript Interchange Format (EPSI) files are Encapsulated PostScript files that have a "preview bitmap" that represents the PostScript image contained in the file. The bitmap (and it is a bitmap and not a color map) can be used by an importing application to quickly display a picture of the imported file.
see Encapsulated PostScript
see Encapsulated PostScript Interchange Format
error class
A class that is used to configure the error reporting module of the HLU library. For any application, there is precisely one error object created, and it is created automatically for you. The error class defines several resources for controlling error reporting.
NCL: Any sequence of NCL operators and operands that results in the computation of a value. In particular, any literal value is an expression and any variable is an expression. Also, arrays are expressions as well as functions. Operators applied to expressions are expressions.
external annotation
An annotation consisting of an arbitrary user-created viewable object added to a plot object. The user controls the location and size relative to the base plot by manipulating the resources of a user-accessible AnnoManager object.


NCL: A data file residing external to NCL in one of NCL's supported data formats.
file variable
NCL: A variable, created by the NCL addfile function, that contains a reference to a file.
fill value
NCL: Same as missing value.
A file that contains detailed information used to plot characters. Fontcaps have a human-readable ASCII form and a binary form that is readable by ctrans.
foreground color
The color associated with color index 1. This is used as the default color in drawing viewable objects.
HLU: Any member of the HLU API.
NCL: An identifier with a list of parameters separated by commas and enclosed in parentheses. Functions return values when called. A function is defined by NCL source unlike the NCL intrinsic function.


A file format used for the storage and on-line retrieval of bitmapped graphical data. GIF stands for "Graphical Interchange Format"; it was created by the CompuServe Corporation in 1987.
A file that contains detailed information used to define the capabilities of a specific plotting device. Graphcaps have a human-readable ASCII form or a binary form that is readable by ctrans.
graphical object
NCL: An NCL value of type graphic. A graphical object is an identifier for an HLU object.
Graphical User Interface
A non-programmatic, graphical, interface to the functionality of NCAR Graphics. Such an interface is sometimes referred to as a "point-and-click" interface, since that is how the interaction is accomplished.
Graphical User Interface.


HDF (Hierarchical Data Format) is a multi-object file format, developed at NCSA, that facilitates the transfer of various types of data between machines and operating systems.
High Level Utilities
Objects, like XyPlot objects, Contour objects, TextItem objects, and so forth, that can be created and manipulated by a set of library functions, callable from either a C program, a Fortran program, the NCAR Command Language, or a GUI. High Level Utilities are also referred to as HLUs and are to be distinguished from the Low Level Utilities, or LLUs.
HLU resource string
A character string identifying a particular resource of a class. These are the resources listed in the descriptions of the classes.
High Level Utilities.


NCL: A name of a variable, or a function, or a procedure.
immediate mode
A mode used by certain API functions that produces immediate drawing without invoking a draw function.
When specific values are assigned to all the resources defined in a class, the result is an instance of that class. Any instance of any class is called an object. Default values exist for all resources; before creating an object, users may override any default value.
instance hierarchy
Same as child/parent hierarchy.
A class is said to inherit resources or support functions from its superclasses, since those functions and resources are available to the subclass. See superclass, and composite class.
intrinsic annotation
An annotation available as composite class member of the PlotManager class. Intrinsic annotations are available to any class of plot object and include TickMark, Title, LabelBar, and Legend annotations. The PlotManager manages these annotations internally.
intrinsic function
NCL: An identifier with a list of parameters, the parameters being separated by commas enclosed and in parentheses. Intrinsic functions return values when called. An intrinsic function is not defined by NCL source; it is a C or Fortran routine that has been added to the NCL function set. Intrinsic functions often perform operations that NCL source does not support.
The International Standards Organization that publishes international standards. (see ANSI).
intrinsic procedure
NCL: An identifier with a list of parameters, the parameters being separated by commas enclosed in parentheses. An intrinsic procedure is not defined by NCL source; it is a C or Fortran routine that has been added to the NCL procedure set. Intrinsic procedures often perform operations that NCL source does not support.



NCL: A word reserved by NCL that not allowed to be used as a variable or function name.


lazy evaluation
NCL: The process whereby relational expressions are assigned a value as soon as it is possible to do so, without necessarily evaluating all of the components in the expression. For example, the expression (1 .lt. 3) .or. (2 .lt. 1) can be assigned the value True immediately after evaluating (1 .lt. 3) without having to evaluate (2 .lt. 1).
literal array
NCL: An array of values specified using literal values, these values being separated by commas and enclosed in ' (/ ' and ' /) ' .
literal value
NCL: A single scalar value expressed by its actual string value (i.e. not referenced by a variable). For example, 1, 1.414 and "string" are literal values.
Low Level Utilities.
local resources,
Resources defined in a particular class that are not inherited from another class.
Low Level Utilities
Traditional NCAR Graphics as it existed before Version 4.0. It is a package of about 500 graphics routines. User entries have both C and Fortran interfaces. These entries continue to be supported in 4.0.


See polymarker.
member class
One of the class components of a composite class.
NCL: Information used to describe data, such as dimension names, variable attributes, valid ranges, and so forth.
A file containing encoded graphical elements. Metafiles are used for storing and transporting graphics images. In the context of NCAR Graphics "metafile" is generally synonymous with NCGM.
missing value
NCL: A special value for a variable or array element indicating that no legal data has been specified for that quantity. See the section on missing data in the evaluation of expressions in the NCL User Guide module on NCL expressions and operators for details on how these missing values are handled.
A sequence of numeric values is monotone (or monotonic) if either: each element in the sequence is larger than (or equal to) its predecessor, or each element in the sequence is smaller than (or equal to) its predecessor. A sequence is monotonically increasing if each element in the sequence is larger than its predecessor; a sequence is monotonically decreasing if each element in the sequence is smaller than its predecessor. A sequence is monotonically non-decreasing if each element in the sequence is larger than, or equal to, its predecessor. A sequence is monotonically non-increasing if each element in the sequence is smaller than, or equal to, its predecessor.


named dimension
NCL: A dimension of a variable or file variable that has been assigned a name using the '!' operator.
NCAR Command Language
A language written for the purpose of interactive data manipulation and display. NCL has a command line interface and will accept netCDF, HDF, Grib, or ASCII input files. NCL also provides an easy interface to the HLUs.
NCAR Computer Graphics Metafile
The NCAR private binary encoding of a Computer Graphics Metafile.
NCAR Computer Graphics Metafile.
NCAR Command Language.
NCL resource list
NCL: An NCL resource list is a list of HLU resource strings followed by a " : " followed by a valid NCL expression.
Normalized Device Coordinates. A coordinate system that describes positions on a virtual plotting device. The lower left corner corresponds to (0,0), and the upper right corner corresponds to (1,1). NDC space will be mapped onto the largest square which will fit on an actual plotting device. PostScript output is centered on the page by default, but options exist for positioning PostScript output anywhere on the page. See the PSWorkstation for details.
netCDF (network Common Data Form) is an interface for scientific data access and a library that provides an implementation of the interface.
NCL: Any data type that represents a numerical value. The numeric data types are: double, float, long, integer, short, and byte.


An object is created from a class by assigning specific values for the class resources. See class and instance.
A transform overlaid on a base plot using the add overlay function. The base plot sets the viewport of the overlay to match its own and transforms the coordinate data of the overlay into its own coordinate space. Only that portion of the overlay's coordinate space that intersects the coordinate space of the managing plot will be visible in the plot output. If the overlay is a plot object, it gives up its base plot status. The base plot to which the overlay is added assumes responsibility for managing the overlay's plot members.
overlay functions
The functions used to add and remove overlays to and from plot objects. Specifically, these functions are NhlAddOverlay and NhlRemoveOverlay for the C and Fortran interfaces.
overlay plot
An overlay created from a plot object rather than from a simple transform.
overlay sequence
The ordering of the transforms in a plot or subplot that contains overlays. The base plot is always first, followed by each overlay in an order that may be manipulated through the overlay functions. The overlay sequence determines the basic drawing order of the plot. The base plot is drawn first; each succeeding overlay is drawn on top of the preceeding transforms. Annotations are not affected by the overlay sequence; they always drawn after all the transforms.


A relationship that exists between objects. If A and B are objects, then A is a parent of B if and only if B is a child of A. See child for more information.
An array of coordinates specifying positions where certain specified symmetric symbols (markers) such as circles, dots, and so forth will be plotted.
Depending on context, the word plot may be used to mean:
  1. A plot object.
  2. A primary base plot and all its plot members.
  3. The output resulting from drawing a primary base plot and all its plot members.
  4. The output resulting from drawing any arbitrary collection of viewable objects.
NCL: The plot_class in NCL is the same as the HLU class pointer used in the HLU API to specify what type of object to create. The NCL plot_class identifier is spelled the same as the HLU class pointer.
plot member
A viewable object managed by a base plot. If the base plot is a subordinate base plot then the object is indirectly a plot member of the complete plot managed by the primary base plot. Drawing the primary base plot causes all its plot members to be drawn. A plot member is either an overlay or an annotation. Although an annotation can be any arbitrary view , an overlay must be a view belonging to the Transform class. A plot member must belong to the same Workstation as its base plot and cannot be drawn independently. A view cannot belong as a plot member to more than one base plot at a time.
plot object
A Transform object instantiated with an active PlotManager. In general, unless otherwise restricted by their specific class, plot objects have the ability both to manage other viewable objects as plot members and to be managed as plot members themselves. A plot object that manages plot members is called a base plot. If the managing plot object is itself managed as a plot member, it is a subordinate base plot. If it manages itself (i.e. is not a plot member) it is a primary base plot. At creation, all plot objects are primary base plots.
A general-purpose programming language that contains a rich set of graphics operators. PostScript is produced by many popular word processing and graphics packages and can be displayed on a wide variety of printers, plotters, and workstation screens.
primary base plot
A self-managing plot object. A base plot that directly manages any number of plot members, consisting of overlays and annotations, but is not itself a plot member. At creation all plot objects are primary base plots. A plot object must be a primary base plot for the user to draw it or change its workstation.
NCL: An identifier with a list of parameters, these parameters being separated by commas and enclosed in parentheses. Procedures do not return values when called.
see PostScript



A variable defined as part of the definition of a class. Resource values in objects can be set by using a Create function or a SetValues function. Resource values can be retrieved using a GetValues function.
resource file
A file that can be used to set values for resources. There are four different resource files. See system resource file and user resource file.
resource forwarding
A technique that makes the resources of member classes available to a composite class.
Stands for the red, green, blue color space where colors are specified as triples of floating point numbers between 0. and 1. inclusive. The number triple gives the intensities for the red, green, and blue components of a color. The triple <1,.0.,0.> would indicate red, for example.


NCL: A single element of data of any type is referred to as a scalar value.
NCL: A single element value of the logical data type with no missing values.
NCL: The range or area within a program in which an identifier is meaningful.
subordinate base plot
A plot member that is an annotation plot. A subordinate base plot sets the viewport of the plot members it controls, while its own viewport is set by the base plot that controls it. Unlike a primary base plot, the user cannot directly draw or change the workstation of a subordinate base plot. A subordinate base plot and the plot members it manages are known collectively as a subplot.
simple overlay
An overlay created from a simple transform.
simple transform
A transform object created without an active PlotManager. Unlike a plot object, a simple transform cannot manage any plot members, either as annotations or as overlays. Therefore, the only elements that appear when a simple transform is drawn are those implemented within the object itself. However, unless restricted by its particular class, a simple transform may itself become an annotation or an overlay of a base plot. Since a plot object has all the capabilities of a simple transform and none of the limitations, the main reason for creating a simple transform would be to conserve system resources when PlotManager capabilities are not required.
statement list
NCL: A sequence of statements separated by a carriage returns (\n).
NCL: A single language construct within NCL that performs a specific task.
A class B is a subclass of A if B has in it all of the resources and support functions of A (B may have additional resources and support functions as well). If B is a class derived from A, then B is said to inherit its resources and support functions from A. If B is derived from A, then it is also said that B is a subclass of A.
The portion of a plot that is managed by a subordinate base plot.
A class A is a superclass of class B if A is on the same branch of the class hierarchy tree and A is higher on that branch.
superclass resource
A resource that one class inherits from a superclass.
support function
A function defined as part of a class definition.
system resource file
There are four files where resources can be set - two of these files are system resource files and the other two are user resource files. The name of one of the system resource files is specified by the setting of the environment variable NCARG_SYSRESFILE; the other system resource file is specified in an application-specific manner. See application resource file.


A Transform object.
Transform class
The Transform class is a subclass of the View class that supports transformations from data coordinate space into the NDC space occupied by the Transform class instance's viewport. Transform subclasses may include the PlotManager class as a composite class member. The Transform class provides a resource for activating or deactivating the PlotManager when a Transform instance is created. In addition, the Transform class provides support functions for converting between data coordinate space and NDC space, for drawing immediate mode graphics primitives, and for adding and removing overlays and annotations from plot objects.
Transform object
An object that is an instance of the Transform class. Transform objects become plot objects when created with an active PlotManager instance. A Transform object created without an active PlotManager is called a simple transform.


user resource file
There are four files where resources can be set - two of these files are user resource files and the other two are system resource files. The name of one of the user resource files is specified by the setting of the environment variable NCARG_USRRESFILE; the other user resource file is specified in an application-specific manner. See application resource file.


NCL: A name that can contain a singly-dimensioned or multi-dimensioned data array, dimension names, coordinate variables, attributes, and so forth.
A viewable object.
viewable object
An object that is an instance of the View class.
View class
An object can be drawn only if it is an instance of the View class. The View class provides resources for sizing and positioning objects on an output device (workstation). The View class also provides a support function for determining the bounding box of a given object in the class. A View class object must have a Workstation class parent.
View object
A viewable object.
For View objects, the viewport is a rectangular subregion of NDC space that specifies where the View object will be placed when drawn. The precise meaning of the viewport depends on the View object. For example, for XyPlot objects, the viewport specifies where the grid containing the curves will be placed, and the labeling (if any) will be drawn outside of the viewport. On the other hand, for TextItem objects, the viewport will be a rectangle surrounding the text string.
visualization block
NCL: A group of NCL resources specified in either an NCL create, setvalues, or getvalues statement. Visualization blocks are used to create, modify, or inquire about the values of resources of objects.


Used in NCAR Graphics Version 4 terminology to mean a valid output device such as an X Window System display, a PostScript file, or an NCGM.
workstation class
A class that provides interfaces to specific output devices.




NCAR Graphics 4.1 Control Panel

NG 4.1 Home, Index, Examples, Glossary, Feedback, NG4.1 Contents, NG4.1 WhereAmI?

$Revision: 1.27 $ $Date: 1998/06/15 20:41:19 $