Introduction to NCL

The NCAR Command Language (NCL) supports the needs of users who want to conduct interactive data exploration and analysis. NCL uses the following model for interactive data analysis: data are selected and read from a file, data are processed, a visualization specification is made, then the visualization is rendered. To provide true interaction, NCL must allow the user to return to any of the previous steps in this model at any time.

Easy and intuitive access to datasets is a fundamental prerequisite for interactive data exploration, analysis, and visualization. Since datasets often come in a variety of data formats, grid sizes, grid resolution, and units, very different datasets often need to be combined, compared, and used at the same time. Currently, specialized applications must be developed to read individual datasets and transform them into a form that is compatible with other datasets being used, as well as with the graphics package being used.

NCL allows different datasets to be imported into one uniform and consistent data manipulation environment. The primary data format used by NCL is the netCDF data format. This network-and-architecture-transparent format has the ability to store multiple data types of multiple dimensions. Furthermore, the netCDF file contains information describing its content. For example, a given variable can have information about the units it is stored in, missing values, valid data ranges, and so on. This general information facilitates the development of a powerful generalized data manipulation environment like NCL. For more information on netCDF, consult the netCDF User's Guide. For a good understanding of NCL, you should be familiar with netCDF and basic programming language concepts.

Easy and intuitive output specification is also a prerequisite for interactive data analysis and exploration. NCL has built-in defaults for quick and accurate visualization of data. The defaults can also be customized by the user in the form of a user defaults file. Furthermore, visualization specifications can be entered and altered at the command line.

Language overview

You can think of NCL as a complete programming language. It has types, variables, operators, expressions, conditional statements, and loops. NCL also has features that are not found in common programming languages. These additional features handle the manipulation of metadata and the configuration of the output graphics. NCL can operate in three modes. The first mode of operation is as an interactive command line interpreter where every statement is executed immediately after the user enters a command or expression. The second mode of operation is as a batch command interpreter where an entire NCL script is read in at one time and executed. The third mode is intended to facilitate the batch production of large quantities of output visualizations either for data exploration or video production. NCL is not meant to be a replacement for programming in other structured languages; it is meant to provide an integrated environment where data can be selected, manipulated, and visualized interactively without requiring compilation.

Reference Manual Control Panel

NG4 Home, Index, Examples, Glossary, Feedback, Ref Contents, Ref WhereAmI?


$Revision: 1.6 $ $Date: 1995/07/26 23:31:25 $