Choosing an interface

This module describes the differences between the NCAR Graphics user interfaces (LLUs, HLUs, and NCL). This module also indicates the advantages of using each interface and provides the criteria for deciding which interface to use depending on the user skill level and user application.


The Low Level Utilities are the traditional Fortran and C functional interface to NCAR Graphics. Currently these utilities have the greatest flexibility and the richest set of functionality available for users. This interface has not changed much since the 3.2 release of NCAR Graphics. If you are not a new user, and you are accustomed to using this interface, then you might want to continue using the LLUs until the full suite of NCAR Graphics functionality is available through the HLUs, NCL, and the GUI (coming in NCAR DataVision) .

For a complete description of how to learn and use the LLUs and examples of the types of plots you can create, see the Low Level Utilities module.


The High Level Utilities are built on top of the LLUs, and they provide a consistent Fortran and C interface to the NCAR Graphics functionality. If you are a new user beginning to learn NCAR Graphics, we recommend that you start with the HLUs. Unlike the LLUs, the HLUs are more consistent in their approach to each graphics utility; once you learn how to create one type of plot, you will have a much easier time learning how to create other types of plots. Although the HLU functionality is currently limited, NCAR Graphics developers are concentrating on extending the HLU interface. In the future, the HLUs will be the primary mechanism recommended for users who want to write NCAR Graphics applications using a Fortran or a C interface.

Also, HLUs use resource files to set plot attributes like color, line thickness, position, etc. This allows developers to quickly change a plot's characteristics without having to edit and recompile any code. Tweaking the appearance of a plot is simply a matter of editing an ascii resource file, supplying a new value for a plot resource, and rerunning your code.

HLUs are also designed to aid GUI developers in their efforts to create graphical interfaces for NCAR Graphics applications. If you want to add this type of enhancement to your NCAR Graphics programs, then we recommend that you use the HLU library.

For a complete description of how to learn and use the HLUs, see the High Level Utilities module.


The NCAR Command Language is an interactive, text-based language interpreter that is built on top of the HLU interface. It allows you to manipulate data and create NCAR Graphics plots without having to write and compile any C or Fortran code. No C or Fortran programming expertise is needed to use NCL, although knowledge of common programming constructs and techniques will be very helpful for writing NCL scripts.

NCL contains a rich set of math functions that allow you to read and process your data dynamically from a command line interface or from within a script if you are using NCL in batch mode.

NCL also provides a mechanism for specifying plot characteristics so you can create NCAR Graphics plots by typing commands rather than developing and compiling a C or Fortran program. NCL has built-in defaults for quick and accurate visualization of data. The defaults can also be customized by the user via a user defaults file. Furthermore, visualization specifications can be entered and altered at the command line.

For more information about learning how to use NCL, see the NCAR Command Language module.

User Guide Control Panel

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

$Revision: 1.11 $ $Date: 1998/06/15 22:07:49 $