The ContourPlot class draws line or filled contours with labels and annotations.
Header file: ncarg/hlu/ContourPlot.h Class name: contourPlotClass Class pointer: NhlcontourPlotClass Fortran class function: NHLFCONTOURPLOTCLASS Superclass: DataComm Composite classes: LogLinTransformation,IrregularTransformation,PlotManager Data specific class Class name: contourPlotDataDepClass Class pointer: NhlcontourPlotDataDepClass Fortran class function: NHLFCONTOURPLOTDATADEPCLASS Superclass: DataSpec
Type name: NhlTcnLevelUseMode Definition: typedef enum _NhlcnLevelUseMode { NhlNOLINE = 0, /* "NoLine" */ NhlLINEONLY = 1, /* "LineOnly" */ NhlLABELONLY = 2, /* "LabelOnly" */ NhlLINEANDLABEL = 3 /* "LineAndLabel" */ } NhlcnLevelUseMode; Type name: NhlTcnLevelUseModeGenArray Definition: An array of NhlTcnLevelUseMode elements. Type name: NhlTcnLineLabelPlacementMode Definition: typedef enum _NhlcnLineLabelSpacingMode { NhlCONSTANT = 0, /* "Constant" */ NhlRANDOMIZED = 1, /* "Randomized" */ NhlCOMPUTED = 2 /* "Computed" */ } NhlcnLineLabelSpacingMode; Type name: NhlTcnHighLowLabelOverlapMode Definition: typedef enum _NhlcnHighLowLabelOverlapMode { NhlIGNOREOVERLAP = 0,1 /* "IgnoreOverlap" */ NhlOMITOVERHL = 2,3 /* "OmitOverHL" */ NhlOMITOVERVP = 4,5 /* "OmitOverVP" */ NhlOMITOVERVPANDHL = 6,7 /* "OmitOverVPAndHL" */ NhlADJUSTVP = 8,9 /* "AdjustVP" */ NhlADJUSTVPOMITOVERHL = 10,11 /* "AdjustVPOmitOverHL" */ } NhlcnHighLowLabelOverlapMode;
+---------------------------------------------------------------+ | ContourPlot Resource Set | |---------------------------------------------------------------| | NAME TYPE ACCESS | | CLASS DEFAULT | |===============================================================| | cnScalarFieldData NhlTInteger RCSG | | CnScalarFieldData <None> | |---------------------------------------------------------------| | cnLevelSelectionMode NhlTLevelSelectionMode RCSG | | LevelSelectionMode "AutomaticLevels" | |---------------------------------------------------------------| | cnLevelCount NhlTInteger G | | CnLevelCount <dynamic> | |---------------------------------------------------------------| | cnMaxLevelCount NhlTInteger RCSG | | MaxLevelCount 16 | |---------------------------------------------------------------| | cnLevelSpacingF NhlTFloat RCSG | | LevelSpacingF 5.0 | |---------------------------------------------------------------| | cnMinLevelValF NhlTFloat RCSG | | MinLevelValF <dynamic> | |---------------------------------------------------------------| | cnMaxLevelValF NhlTFloat RCSG | | MaxLevelValF <dynamic> | |---------------------------------------------------------------| | cnLevels NhlTFloatGenArray RCSG | | Levels <dynamic> | |---------------------------------------------------------------| | cnMonoLevelFlag NhlTBoolean RCSG | | CnMonoLevelFlag False | |---------------------------------------------------------------| | cnLevelFlag NhlTcnLevelUseMode RCSG | | CnLevelFlags "LineOnly" | |---------------------------------------------------------------| | cnLevelFlags NhlTcnLevelUseModeGenArray RCSG | | CnLevelFlags <dynamic> | |---------------------------------------------------------------| | cnLineLabelInterval NhlTFloat RCSG | | CnLineLabelInterval 2 | |---------------------------------------------------------------| | cnLinesOn NhlTBoolean RCSG | | CnLinesOn True | |---------------------------------------------------------------| | cnLineDrawOrder NhlTDrawOrder RCSG | | CnLineDrawOrder "Draw" | |---------------------------------------------------------------| | cnMonoLineColor NhlTBoolean RCSG | | CnMonoLineColor True | |---------------------------------------------------------------| | cnLineColor NhlTColorIndex RCSG | | LineColor "Foreground" | |---------------------------------------------------------------| | cnLineColors NhlTColorIndexGenArray RCSG | | CnLineColors <dynamic> | |---------------------------------------------------------------| | cnMonoLineDashPattern NhlTBoolean RCSG | | CnMonoLineDashPattern True | |---------------------------------------------------------------| | cnLineDashPattern NhlTDashIndex RCSG | | LineDashPattern "SolidLine" | |---------------------------------------------------------------| | cnLineDashPatterns NhlTDashIndexGenArray RCSG | | CnLineDashPatterns <dynamic> | |---------------------------------------------------------------| | cnMonoLineThickness NhlTBoolean RCSG | | CnMonoLineThickness True | |---------------------------------------------------------------| | cnLineThicknessF NhlTFloat RCSG | | LineThicknessF 1.0 | |---------------------------------------------------------------| | cnLineThicknesses NhlTFloatGenArray RCSG | | CnLineThicknesses 1.0 for all elements | |---------------------------------------------------------------| | cnLineDashSegLenF NhlTFloat RCSG | | LineDashSegLenF 0.15 | |---------------------------------------------------------------| | cnRasterModeOn NhlTBoolean RCSG | | CnRasterModeOn False | |---------------------------------------------------------------| | cnRasterSmoothingOn NhlTBoolean RCSG | | CnRasterSmoothingOn False | |---------------------------------------------------------------| | cnRasterMinCellSizeF NhlTFloat RCSG | | CnRasterMinCellSizeF 0.001 | |---------------------------------------------------------------| | cnRasterSampleFactorF NhlTFloat RCSG | | CnRasterSampleFactorF False | |---------------------------------------------------------------| | cnRasterCellSizeF NhlTFloat RCSG | | CnRasterCellSizeF <dynamic> | |---------------------------------------------------------------| | cnFillOn NhlTBoolean RCSG | | CnFillOn False | |---------------------------------------------------------------| | cnFillDrawOrder NhlTDrawOrder RCSG | | CnFillDrawOrder "Draw" | |---------------------------------------------------------------| | cnFillBackgroundColor NhlTColorIndex RCSG | | FillBackgroundColor "Transparent" | |---------------------------------------------------------------| | cnMonoFillColor NhlTBoolean RCSG | | CnMonoFillColor False | |---------------------------------------------------------------| | cnFillColor NhlTColorIndex RCSG | | FillColor "Foreground" | |---------------------------------------------------------------| | cnFillColors NhlTColorIndexGenArray RCSG | | CnFillColors <dynamic> | |---------------------------------------------------------------| | cnMonoFillPattern NhlTBoolean RCSG | | CnMonoFillPattern True | |---------------------------------------------------------------| | cnFillPattern NhlTFillIndex RCSG | | FillPattern "SolidFill" | |---------------------------------------------------------------| | cnFillPatterns NhlTFillIndexGenArray RCSG | | CnFillPatterns <dynamic> | |---------------------------------------------------------------| | cnMonoFillScale NhlTBoolean RCSG | | CnMonoFillScale True | |---------------------------------------------------------------| | cnFillScaleF NhlTFloat RCSG | | FillScaleF 1.0 | |---------------------------------------------------------------| | cnFillScales NhlTFloatGenArray RCSG | | CnFillScales 1.0 for all elements | |---------------------------------------------------------------| | cnLabelDrawOrder NhlTDrawOrder RCSG | | CnLabelDrawOrder "Draw" | |---------------------------------------------------------------| | cnLabelMasking NhlTBoolean RCSG | | CnLabelMasking False | |---------------------------------------------------------------| | cnLowUseHighLabelRes NhlTBoolean RCSG | | CnLowUseHighLabelRes False | |---------------------------------------------------------------| | cnHighUseLineLabelRes NhlTBoolean RCSG | | CnHighUseLineLabelRes False | |---------------------------------------------------------------| | cnConstFUseInfoLabelRes NhlTBoolean RCSG | | CnConstFUseInfoLabelRes False | |---------------------------------------------------------------| | cnHighLowLabelOverlapMode NhlTcnHighLowLabelOverlapMode RCSG | | CnHighLowLabelOverlapMode "IgnoreOverlap" | |---------------------------------------------------------------| | cnLabelScalingMode NhlTScalingMode RCSG | | CnLabelScalingMode "ScaleFactor" | |---------------------------------------------------------------| | cnLabelScaleValueF NhlTFloat RCSG | | CnLabelScaleValueF 1.0 | |---------------------------------------------------------------| | cnLabelScaleFactorF NhlTFloat G | | CnLabelScaleFactorF <dynamic> | |---------------------------------------------------------------| | cnMaxDataValueFormat NhlTString RCSG | | CnMaxDataValueFormat NULL | |---------------------------------------------------------------| | cnLineLabelsOn NhlTBoolean RCSG | | PlotLabelsOn True | |---------------------------------------------------------------| | cnExplicitLineLabelsOn NhlTBoolean RCSG | | CnExplicitLineLabelsOn False | |---------------------------------------------------------------| | cnLineLabelPlacementMode NhlTcnLineLabelPlacementMode RCSG | | CnLineLabelPlacementMode "Randomized" | |---------------------------------------------------------------| | cnLineLabelStrings NhlTStringGenArray RCSG | | CnLineLabelStrings <dynamic> | |---------------------------------------------------------------| | cnMonoLineLabelFontColor NhlTBoolean RCSG | | CnMonoLineLabelFontColor True | |---------------------------------------------------------------| | cnLineLabelFontColor NhlTColorIndex RCSG | | FontColor "Foreground" | |---------------------------------------------------------------| | cnLineLabelFontColors NhlTColorIndexGenArray RCSG | | CnLineLabelFontColors <dynamic> | |---------------------------------------------------------------| | cnLineLabelFormat NhlTString RCSG | | NumberFormat "*+g" | |---------------------------------------------------------------| | cnLineLabelFontHeightF NhlTFloat RCSG | | FontHeightF <dynamic> | |---------------------------------------------------------------| | cnLineLabelFont NhlTFont RCSG | | Font "pwritx" | |---------------------------------------------------------------| | cnLineLabelFontAspectF NhlTFloat RCSG | | FontAspectF 1.3125 | |---------------------------------------------------------------| | cnLineLabelFontThicknessF NhlTFloat RCSG | | FontThicknessF 1.0 | |---------------------------------------------------------------| | cnLineLabelFontQuality NhlTFontQuality RCSG | | FontQuality "High" | |---------------------------------------------------------------| | cnLineLabelConstantSpacingF NhlTFloat RCSG | | TextConstantSpacingF 0.0 | |---------------------------------------------------------------| | cnLineLabelAngleF NhlTFloat RCSG | | CnLineLabelAngleF -1.0 | |---------------------------------------------------------------| | cnLineLabelFuncCode NhlTCharacter RCSG | | TextFuncCode ':' | |---------------------------------------------------------------| | cnLineLabelBackgroundColor NhlTColorIndex RCSG | | FillBackgroundColor "Background" | |---------------------------------------------------------------| | cnLineLabelPerimOn NhlTInteger RCSG | | EdgesOn True | |---------------------------------------------------------------| | cnLineLabelPerimSpaceF NhlTFloat RCSG | | EdgeBorderWidthF 0.33 | |---------------------------------------------------------------| | cnLineLabelPerimColor NhlTColorIndex RCSG | | EdgeColor "Foreground" | |---------------------------------------------------------------| | cnLineLabelPerimThicknessF NhlTFloat RCSG | | EdgeThicknessF 1.0 | |---------------------------------------------------------------| | cnHighLabelsOn NhlTBoolean RCSG | | PlotLabelsOn False | |---------------------------------------------------------------| | cnHighLabelString NhlTString RCSG | | CnHighLabelString NULL | |---------------------------------------------------------------| | cnHighLabelFormat NhlTString RCSG | | NumberFormat "*+g" | |---------------------------------------------------------------| | cnHighLabelFontHeightF NhlTFloat RCSG | | FontHeightF <dynamic> | |---------------------------------------------------------------| | cnHighLabelFont NhlTFont RCSG | | Font "pwritx" | |---------------------------------------------------------------| | cnHighLabelFontColor NhlTColorIndex RCSG | | FontColor "Foreground" | |---------------------------------------------------------------| | cnHighLabelFontAspectF NhlTFloat RCSG | | FontAspectF 1.3125 | |---------------------------------------------------------------| | cnHighLabelFontThicknessF NhlTFloat RCSG | | FontThicknessF 1.0 | |---------------------------------------------------------------| | cnHighLabelFontQuality NhlTFontQuality RCSG | | FontQuality "High" | |---------------------------------------------------------------| | cnHighLabelConstantSpacingF NhlTFloat RCSG | | TextConstantSpacingF 0.0 | |---------------------------------------------------------------| | cnHighLabelAngleF NhlTFloat RCSG | | TextAngleF 0.0 | |---------------------------------------------------------------| | cnHighLabelFuncCode NhlTCharacter RCSG | | TextFuncCode ':' | |---------------------------------------------------------------| | cnHighLabelBackgroundColor NhlTColorIndex RCSG | | FillBackgroundColor "Background" | |---------------------------------------------------------------| | cnHighLabelPerimOn NhlTInteger RCSG | | EdgesOn True | |---------------------------------------------------------------| | cnHighLabelPerimSpaceF NhlTFloat RCSG | | EdgeBorderWidthF 0.33 | |---------------------------------------------------------------| | cnHighLabelPerimColor NhlTColorIndex RCSG | | EdgeColor "Foreground" | |---------------------------------------------------------------| | cnHighLabelPerimThicknessF NhlTFloat RCSG | | EdgeThicknessF 1.0 | |---------------------------------------------------------------| | cnLowLabelsOn NhlTBoolean RCSG | | PlotLabelsOn False | |---------------------------------------------------------------| | cnLowLabelString NhlTString RCSG | | CnLowLabelString NULL | |---------------------------------------------------------------| | cnLowLabelFormat NhlTString RCSG | | NumberFormat "*+g" | |---------------------------------------------------------------| | cnLowLabelFontHeightF NhlTFloat RCSG | | FontHeightF <dynamic> | |---------------------------------------------------------------| | cnLowLabelFont NhlTFont RCSG | | Font "pwritx" | |---------------------------------------------------------------| | cnLowLabelFontColor NhlTColorIndex RCSG | | FontColor "Foreground" | |---------------------------------------------------------------| | cnLowLabelFontAspectF NhlTFloat RCSG | | FontAspectF 1.3125 | |---------------------------------------------------------------| | cnLowLabelFontThicknessF NhlTFloat RCSG | | FontThicknessF 1.0 | |---------------------------------------------------------------| | cnLowLabelFontQuality NhlTFontQuality RCSG | | FontQuality "High" | |---------------------------------------------------------------| | cnLowLabelConstantSpacingF NhlTFloat RCSG | | TextConstantSpacingF 0.0 | |---------------------------------------------------------------| | cnLowLabelAngleF NhlTFloat RCSG | | TextAngleF 0.0 | |---------------------------------------------------------------| | cnLowLabelFuncCode NhlTCharacter RCSG | | TextFuncCode ':' | |---------------------------------------------------------------| | cnLowLabelBackgroundColor NhlTColorIndex RCSG | | FillBackgroundColor "Background" | |---------------------------------------------------------------| | cnLowLabelPerimOn NhlTInteger RCSG | | EdgesOn True | |---------------------------------------------------------------| | cnLowLabelPerimSpaceF NhlTFloat RCSG | | EdgeBorderWidthF 0.33 | |---------------------------------------------------------------| | cnLowLabelPerimColor NhlTColorIndex RCSG | | EdgeColor "Foreground" | |---------------------------------------------------------------| | cnLowLabelPerimThicknessF NhlTFloat RCSG | | EdgeThicknessF 1.0 | |---------------------------------------------------------------| | cnInfoLabelOn NhlTBoolean RCSG | | AnnotationLabelsOn True | |---------------------------------------------------------------| | cnInfoLabelString NhlTString RCSG | | CnInfoLabelString NULL | |---------------------------------------------------------------| | cnInfoLabelFormat NhlTString RCSG | | NumberFormat "*+g" | |---------------------------------------------------------------| | cnInfoLabelFontHeightF NhlTFloat RCSG | | FontHeightF <dynamic> | |---------------------------------------------------------------| | cnInfoLabelTextDirection NhlTTextDirection RCSG | | TextDirection "Across" | |---------------------------------------------------------------| | cnInfoLabelFont NhlTFont RCSG | | Font "pwritx" | |---------------------------------------------------------------| | cnInfoLabelFontColor NhlTColorIndex RCSG | | FontColor "Foreground" | |---------------------------------------------------------------| | cnInfoLabelFontAspectF NhlTFloat RCSG | | FontAspectF 1.3125 | |---------------------------------------------------------------| | cnInfoLabelFontThicknessF NhlTFloat RCSG | | FontThicknessF 1.0 | |---------------------------------------------------------------| | cnInfoLabelFontQuality NhlTFontQuality RCSG | | FontQuality "High" | |---------------------------------------------------------------| | cnInfoLabelConstantSpacingF NhlTFloat RCSG | | TextConstantSpacingF 0.0 | |---------------------------------------------------------------| | cnInfoLabelAngleF NhlTFloat RCSG | | TextAngleF 0.0 | |---------------------------------------------------------------| | cnInfoLabelFuncCode NhlTCharacter RCSG | | TextFuncCode ':' | |---------------------------------------------------------------| | cnInfoLabelBackgroundColor NhlTColorIndex RCSG | | FillBackgroundColor "Background" | |---------------------------------------------------------------| | cnInfoLabelPerimOn NhlTInteger RCSG | | EdgesOn True | |---------------------------------------------------------------| | cnInfoLabelPerimSpaceF NhlTFloat RCSG | | EdgeBorderWidthF 0.33 | |---------------------------------------------------------------| | cnInfoLabelPerimColor NhlTColorIndex RCSG | | EdgeColor "Foreground" | |---------------------------------------------------------------| | cnInfoLabelPerimThicknessF NhlTFloat RCSG | | EdgeThicknessF 1.0 | |---------------------------------------------------------------| | cnInfoLabelZone NhlTInteger RCSG | | CnInfoLabelZone 3 | |---------------------------------------------------------------| | cnInfoLabelSide NhlTPosition RCSG | | CnInfoLabelSide "Bottom" | |---------------------------------------------------------------| | cnInfoLabelJust NhlTJustification RCSG | | CnInfoLabelJust "TopRight" | |---------------------------------------------------------------| | cnInfoLabelParallelPosF NhlTFloat RCSG | | CnInfoLabelParallelPosF 1.0 | |---------------------------------------------------------------| | cnInfoLabelOrthogonalPosF NhlTFloat RCSG | | CnInfoLabelOrthogonalPosF 0.02 | |---------------------------------------------------------------| | cnNoDataLabelOn NhlTBoolean RCSG | | AnnotationLabelsOn True | |---------------------------------------------------------------| | cnNoDataLabelString NhlTString RCSG | | CnNoDataLabelString NULL | |---------------------------------------------------------------| | cnConstFLabelOn NhlTBoolean RCSG | | AnnotationLabelsOn True | |---------------------------------------------------------------| | cnConstFLabelString NhlTString RCSG | | CnConstFLabelString NULL | |---------------------------------------------------------------| | cnConstFLabelFormat NhlTString RCSG | | NumberFormat "*+g" | |---------------------------------------------------------------| | cnConstFLabelFontHeightF NhlTFloat RCSG | | FontHeightF <dynamic> | |---------------------------------------------------------------| | cnConstFLabelTextDirection NhlTTextDirection RCSG | | TextDirection "Across" | |---------------------------------------------------------------| | cnConstFLabelFont NhlTFont RCSG | | Font "pwritx" | |---------------------------------------------------------------| | cnConstFLabelFontColor NhlTColorIndex RCSG | | FontColor "Foreground" | |---------------------------------------------------------------| | cnConstFLabelFontAspectF NhlTFloat RCSG | | FontAspectF 1.3125 | |---------------------------------------------------------------| | cnConstFLabelFontThicknessF NhlTFloat RCSG | | FontThicknessF 1.0 | |---------------------------------------------------------------| | cnConstFLabelFontQuality NhlTFontQuality RCSG | | FontQuality "High" | |---------------------------------------------------------------| | cnConstFLabelConstantSpacingF NhlTFloat RCSG | | TextConstantSpacingF 0.0 | |---------------------------------------------------------------| | cnConstFLabelAngleF NhlTFloat RCSG | | TextAngleF 0.0 | |---------------------------------------------------------------| | cnConstFLabelFuncCode NhlTCharacter RCSG | | TextFuncCode ':' | |---------------------------------------------------------------| | cnConstFLabelBackgroundColor NhlTColorIndex RCSG | | FillBackgroundColor "Background" | |---------------------------------------------------------------| | cnConstFLabelPerimOn NhlTInteger RCSG | | EdgesOn True | |---------------------------------------------------------------| | cnConstFLabelPerimSpaceF NhlTFloat RCSG | | EdgeBorderWidthF 0.33 | |---------------------------------------------------------------| | cnConstFLabelPerimColor NhlTColorIndex RCSG | | EdgeColor "Foreground" | |---------------------------------------------------------------| | cnConstFLabelPerimThicknessF NhlTFloat RCSG | | EdgeThicknessF 1.0 | |---------------------------------------------------------------| | cnConstFLabelZone NhlTInteger RCSG | | CnConstFLabelZone 0 | |---------------------------------------------------------------| | cnConstFLabelSide NhlTPosition RCSG | | CnConstFLabelSide "Bottom" | |---------------------------------------------------------------| | cnConstFLabelJust NhlTJustification RCSG | | CnConstFLabelJust "CenterCenter" | |---------------------------------------------------------------| | cnConstFLabelParallelPosF NhlTFloat RCSG | | CnConstFLabelParallelPosF 0.0 | |---------------------------------------------------------------| | cnConstFLabelOrthogonalPosF NhlTFloat RCSG | | CnConstFLabelOrthogonalPosF 0.0 | |---------------------------------------------------------------| | cnMissingValPerimOn NhlTInteger RCSG | | EdgesOn False | |---------------------------------------------------------------| | cnMissingValPerimThicknessF NhlTFloat RCSG | | EdgeThicknessF 1.0 | |---------------------------------------------------------------| | cnMissingValPerimDashPattern NhlTDashIndex RCSG | | EdgeDashPattern "SolidLine" | |---------------------------------------------------------------| | cnMissingValPerimColor NhlTColorIndex RCSG | | EdgeColor "Foreground" | |---------------------------------------------------------------| | cnMissingValFillColor NhlTColorIndex RCSG | | FillColor "Background" | |---------------------------------------------------------------| | cnMissingValFillPattern NhlTInteger RCSG | | FillPattern "HollowFill" | |---------------------------------------------------------------| | cnMissingValFillScaleF NhlTFloat RCSG | | FillScaleF 1.0 | |---------------------------------------------------------------| | cnGridBoundPerimOn NhlTInteger RCSG | | EdgesOn False | |---------------------------------------------------------------| | cnGridBoundPerimThicknessF NhlTFloat RCSG | | EdgeThicknessF 1.0 | |---------------------------------------------------------------| | cnGridBoundPerimDashPattern NhlTDashIndex RCSG | | EdgeDashPattern "SolidLine" | |---------------------------------------------------------------| | cnGridBoundPerimColor NhlTColorIndex RCSG | | EdgeColor "Foreground" | |---------------------------------------------------------------| | cnOutOfRangePerimOn NhlTInteger RCSG | | EdgesOn False | |---------------------------------------------------------------| | cnOutOfRangePerimThicknessF NhlTFloat RCSG | | EdgeThicknessF 1.0 | |---------------------------------------------------------------| | cnOutOfRangePerimDashPattern NhlTDashIndex RCSG | | EdgeDashPattern "SolidLine" | |---------------------------------------------------------------| | cnOutOfRangePerimColor NhlTColorIndex RCSG | | EdgeColor "Foreground" | |---------------------------------------------------------------| | cnSmoothingOn NhlTBoolean RCSG | | CnSmoothingOn False | |---------------------------------------------------------------| | cnSmoothingTensionF NhlTFloat RCSG | | CnSmoothingTensionF -2.5 | |---------------------------------------------------------------| | cnSmoothingDistanceF NhlTFloat RCSG | | CnSmoothingDistanceF 0.01 | |---------------------------------------------------------------| | cnMaxPointDistanceF NhlTFloat RCSG | | CnMaxPointDistanceF 0.05 | |---------------------------------------------------------------| | cnExplicitLabelBarLabelsOn NhlTBoolean RCSG | | CnExplicitLabelBarLabelsOn False | |---------------------------------------------------------------| | cnLabelBarEndLabelsOn NhlTBoolean RCSG | | CnLabelBarEndLabelsOn False | |---------------------------------------------------------------| | cnExplicitLegendLabelsOn NhlTBoolean RCSG | | CnExplicitLegendLabelsOn False | |---------------------------------------------------------------| | cnLegendLevelFlags NhlTcnLevelUseModeGenArray RCSG | | CnLegendLevelFlags NULL | |---------------------------------------------------------------| | cnConpackParams NhlTStringGenArray RCS | | CnConpackParams NULL | +---------------------------------------------------------------+
You can access all LogLinTransformation resources. However, note that ContourPlot intercepts LogLinTransformation resources, as follows:
LogAxis
. If
trXAxisType is set to any other value, it sets
trXLog False.
LogAxis
. If
trYAxisType is set to any other value, it sets
trYLog False.
All Transformation superclass resources are accessible. However, ContourPlot blocks access to all resources specific to the IrregularTransformation except for:
and for the following intercepted resources:NULL
and trXAxisType is set to any value
other than IrregularAxis
, ContourPlot
switches to a coordinate extent bounded by 0 and the length of the
X-Axis dimension minus one. If trXAxisType is not set, but
the LogLinTransformation resource trXLog is
set, ContourPlot sets trXAxisType to
LogAxis
if trXLog is True; if trXLog is
False, it changes trXAxisType to LinearAxis
if
it had been set to LogAxis
and leaves it unchanged
otherwise. trXAxisType can be set to LogAxis
without error only when the X-Axis coordinate extent as passed from
the ScalarField is entirely positive. If this is not
the case, trXAxisType will default to LinearAxis
.
NULL
and trYAxisType is set to any value
other than IrregularAxis
, ContourPlot
switches to a coordinate extent bounded by 0 and the length of the
Y-Axis dimension minus one. If trYAxisType is not set, but
the LogLinTransformation resource trYLog is
set, ContourPlot sets trYAxisType to
LogAxis
if trYLog is True; if trYLog is
False, it changes trYAxisType to LinearAxis
if
it had been set to LogAxis
and leaves it unchanged
otherwise. trYAxisType can be set to LogAxis
without error only when the Y-Axis coordinate extent as passed from
the ScalarField is entirely positive. If this is not
the case, trYAxisType will default to LinearAxis
.
Never
.
Never
.
Conditional
.
Conditional
.
The ContourPlot object provides what may seem like an overwhelming number of resources, but keep in mind that generally you will need to use only a few of these resources. In fact, there is only one resource you need to set explicitly in order to generate a meaningful contour plot. You need to focus only on resources that modify the features of the ContourPlot object that are important to you. All the others will default to a generally usable value. Moreover, resources that provide control over related attributes of the various ContourPlot elements have related names. As an example, all resources that specify the color of the text used for the various labels available in the ContourPlot object have names of the form cn...LabelFontColor(s), where the plural form is used for resources that represent arrays.
ContourPlot instantiates child objects to manage transformations between the data coordinate system and NDC space. The LogLinTransformation manages linear and logarithmic transformations, and the IrregularTransformation manages the transformation if one or both axes are irregularly spaced. By default the data coordinate extents are based on the extents of the supplied ScalarField object data, but you may adjust them using resources belonging to the transformation objects.
NULL
. The coordinate extents of a linear axis may
arbitrarily intersect or encompass the data extent. If you set a
logarithmic axis, then the coordinate extent of that axis must be
entirely positive, but otherwise may intersect or extend beyond the
data extent.
NULL
, then ContourPlot uses an
IrregularTransformation object. Note that
ContourPlot treats an axis with an associated
coordinate array as irregular even if the coordinate array actually
has evenly spaced values. ContourPlot represents an
irregular axis not by stretching and compressing various regions of the plot,
but by displaying it with irregularly spaced tick marks.
In addition to a small performance penalty, there are some
restrictions associated with use of the
IrregularTransformation object. Although you may
limit the coordinate extent to a subspace of the data coordinate
extent of the ScalarField object data, you are not
allowed to define a coordinate range that extends outside the range of
the data coordinates of an irregular axis. Using the
IrregularTransformation resources trXAxisType or
trYAxisType,
it is possible to set an irregular axis to LinearAxis
or
even, under certain conditions, to LogAxis
, but the
results are probably not what you want. Since
ContourPlot does not intrinsically support a
linearization transformation for irregularly spaced data, it can only
switch to a linear system by replacing the data coordinates with array
index coordinates, which are, in fact, linearly spaced. To properly
transform irregularly spaced data into a linear or logarithmic
coordinate system, you must use the overlay mechanism (V4.1 Status Note 1).
By overlaying a contourplot on various types of base plot, it is possible to map contours of arbitrary ScalarField data into a variety of coordinate spaces. You can overlay a contourplot on a mapplot to transform the data into any of 10 different map projections. You can overlay contours of irregularly gridded data on a loglinplot to have the data appear in a linear or logarithmic coordinate space. You can also overlay any contoured data on an irregularplot, either to project regularly gridded data into an irregular coordinate space, or perhaps to overcome the data extent limitations of the ContourPlot's intrinsic IrregularTransformation object. You can overlay a contourplot on any type of base plot in a one-step operation using the NhlAddOverlay function.
Note that annotations associated with the ContourPlot, including the informational and constant field labels, are always drawn during the postdraw phase.
Conditional
or Always
.
Except for the tick marks and the titles, all these annotations are positioned using resources that follow the PlotManager Location Control Model. The ContourPlot object provides resources for controlling attributes of the informational and the constant field labels. You can control the resources of the objects that render the intrinsic annotations directly, subject to some access and behavioral modifications imposed by the PlotManager object and by the ContourPlot object itself. These objects are the TickMark object, the Title object, the LabelBar object, and the Legend object.
AutomaticLevels
, is easy to use. It selects a "nice"
spacing starting from the smallest relatively round number greater
than the minimum data value, such that the number of contour levels is
as close as possible to, but less than, the value of the resource cnMaxLevelCount.
EqualSpacedLevels
mode defines exactly cnMaxLevelCount
levels spaced evenly from the data minimum value to the data maximum
value. In ManualLevels
mode, you set the maximum and
minimum contour levels using the resources cnMinLevelValF and
cnMaxLevelValF
with a spacing defined by the resource cnLevelSpacingF. Finally,
Explicit
mode allows you to define the level values
yourself by setting the array resource cnLevels. The
ManualLevels
and ExplicitLevels
modes have
the advantage that they are independent of the maximum and minimum
values of the particular dataset you are contouring, and therefore
can be used to enforce consistency in the contouring of a series of
related datasets. ExplicitLevels
is the only mode that
allows you to establish variably spaced contour levels.
Once you have established the contour levels, you can retrieve the number of levels actually used by getting the value of the read-only resource cnLevelCount. Based on this value, you can set the cnLevelFlags enumerated array resource to specify whether you want lines only, labels only, lines and labels, or nothing at each individual contour level. This resource also has a scalar equivalent, cnLevelFlag, which you can set instead if you want all levels to appear the same way. If you set neither of these resources, then line labels automatically appear at contour levels spaced apart by the value of the resource cnLineLabelInterval, set by default to the value 2.
For non-raster fill, you can control the color, the fill pattern, and the scale of the fill pattern for all filled contour regions either individually or uniformly as a group. Individual control is through the array resources, cnFillColors, cnFillPatterns, and cnFillScales while control as a group is through the scalar resources cnFillColor, cnFillPattern, and cnFillScaleF. You choose the scalar resources by setting the boolean resources cnMonoFillColor, cnMonoFillPattern, and cnMonoFillScale True; you choose the array resources by setting them False.
ContourPlot performs raster fill by assigning appropriate colors to each cell of a two-dimensional array of equally sized rectangular cells superimposed on the area occupied by the data grid. If cnRasterSmoothingOn is set True, the level (and hence the color) assigned to each cell is determined by interpolating the values of neighboring points in the data grid. If cnRasterSmoothingOn is False (the default), ContourPlot creates a discrete raster plot: any raster cell whose center lies within the rectangular area bounded by lines halfway between each grid point (in data space) is given the color assigned to the level representing the grid point datum.
By default, ContourPlot dynamically tries to achieve an optimal size for the cell array based on the resolution of the workstation, the density of the data grid, the data transformation in effect, and whether smoothing is turned on. However, resources are provided for controlling the density of the raster cell grid. You can either set the cell size explicitly, using the resource cnRasterCellSizeF, or you can adjust the dynamically determined density, using the resource cnRasterSampleFactorF. The cnRasterMinCellSizeF resource sets a lower bound for the size of dynamically sized raster cells and consequently an upper limit on the raster cell density. Its purpose is to prevent the cell array from becoming unreasonably large for high-resolution workstations.
As with area fill, raster fill colors are specified using the cnFillColors resource. The fill pattern and fill scale resources are ignored when raster fill is enabled.
ContourPlot supports five label types: line labels, high labels, low labels, an informational label, and a constant field label. The constant field label also has the ability to act as a label indicating that no data have been supplied. Each type has its own set of resources allowing individual control of the particular label type. The resources controlling label attributes have a generally uniform behavior for all label types. The resource names follow a consistent naming scheme for distinguishing the label types and their attributes. There are broadly three categories of label attributes that apply to all labels: those that control the content and format of the text string; those that control the appearance of the text, called font attributes; and those that control the appearance of the label background and perimeter. The informational and constant field labels support a fourth category of label attributes: those that control the location of the label. In addition to these general categories, there are several resources that apply globally to all label types, as well as a few that only apply to a single label type.
To simplify the management of label resources, there are several resources that allow you tie many of the resources of different label types together. cnLowUseHighLabelRes, when set True, causes all low label resources except cnLowLabelString to take on the value of the corresponding high label resource. Similarly, cnHighUseLineLabelRes, when set True, causes all high label resources except cnHighLabelString and cnHighLabelAngleF to take on the value of the corresponding line label resource. And finally, cnConstFUseInfoLabelRes, when set True, causes all constant field label resources except cnConstFLabelString to take on the value of the corresponding informational label resource.
Note that because of constraints imposed by the low level utilities, some attributes of high and low labels are tied together regardless of the setting of cnLowUseHighLabelRes. Also, the line label resources differ because several of them are array resources, allowing individual control of the labels that appear with each contour line.
The following sections discuss each label attribute category as it applies to all label types. The ellipsis marks (...) in the resource names below stand for the names of the label types:
You specify the format string for numerical substitutions according to the HLU Floating Point Format Specification scheme. This scheme allows certain aspects of a number's format to be determined dynamically. The ContourPlot object uses this facility to allow you to base the formatting of all labels--in particular the assumed rightmost significant digit--on the dataset element with the maximum absolute value. The resource cnMaxDataValueFormat specifies a format for the dataset element with the maximum absolute value. The value and the format used together determine the specification of each dynamically specified format option for all label types.
The ContourPlot object recognizes a number of special substitution strings that are replaced on output with certain key values related to the dataset and the contour levels. How or whether a particular substitution string is recognized depends on the label type as follows:
If the resource cnMonoLineLabelFontColor
is set True, ContourPlot uses the scalar resource cnLineLabelFontColor
for all line labels; otherwise it uses the array resource, cnLineLabelFontColors.
Also the resource cnLineLabelAngleF is
ignored if cnLineLabelPlacementMode
is set to Constant
.
Constant
.
There are three ways to position line labels using the resource cnLineLabelPlacementMode. The Constant
mode is the most basic: the line
label is rendered as a part of the dash pattern. This implies that the
label density can be controlled by setting the
cnLineDashSegLenF
resource, which controls the length of the dash pattern.
For the other two methods, Randomized
and
Computed
, the labels are drawn separately from the lines.
As yet, no native ContourPlot
resources have been implemented
for controlling label density for these modes. However, you can gain this
capability by setting low level control parameters using the
cnConpackParams
resource.
Also you can control in a limited way the location of high and low labels with the resource cnHighLowLabelOverlapMode. Again there are no native resources for adjusting the label density, but control is possible using cnConpackParams.
You control the line attributes of the boundaries with the following resources. The ellipsis marks (...) in the resource names below stand for the names of the boundary types: MissingValue, Grid, or OutOfRange.
Missing values areas have in addition the resources cnMissingValFillColor, cnMissingValFillPattern, and cnMissingValFillScaleF for controlling the fill attributes of the missing value areas. If the raster mode of contour filling is enabled, only the resource cnMissingValFillColor has any effect.
1. The support for irregular transformations is at a transitional stage. Eventually, ContourPlot will be able to perform transformations from irregular coordinates to linear and logarithmic coordinates without using the overlay mechanism. This will eliminate the need for a switch to the index coordinate system.
3. Under certain conditions when part of the data space is outside the viewport, the Computed line label placement mode seems to fail, and the plot appears without any line labels at all. This problem requires further investigation.
4. Large values of cnSmoothingTensionF above 10.0 or so often cause the ContourPlot object to improperly project lines out of the plotter frame. This needs to be examined more closely. Also note that when lines cross, contour fill often 'bleeds' out of its boundaries.
5. Since the ContourPlot object creates the informational label using an Annotation object managed by the PlotManager object, Conpack has no way of knowing the position of the Informational label. Therefore, there is no way to support the option of omitting high and low labels that overlap the informational label. For the time being at least, the type NhlTcnHighLowLabelOverlapMode maps directly to the Conpack internal parameter, 'HLO'. Therefore, numerically speaking, this type effectively has two values for each functionally unique enumerated value.
NG4.1 Home, Index, Examples, Glossary, Feedback, Ref Contents, Ref WhereAmI?