
TickMark class
The TickMark object draws tick marks along any of the sides of a plot.Synopsis
Header file: ncarg/hlu/TickMark.h Class name: tickMarkClass Class pointer: NhltickMarkClass Fortran class function: NHLFTICKMARKCLASS Superclass: View Composite classes: <None>
Class-defined types
Type name: NhlTTickMarkMode Definition: typedef enum { NhlAUTOMATIC = 0, /* "Automatic" */ NhlMANUAL = 1, /* "Manual" */ NhlEXPLICIT = 2 /* "Explicit" */ } NhlTickMarkMode; Type name: NhlTTickMarkStyle Definition: typedef enum { NhlLOG = 0, /* "Log" */ NhlLINEAR = 1, /* "Linear" */ NhlIRREGULAR = 2, /* "Irregular" */ NhlGEOGRAPHIC = 3, /* "Geographic" */ NhlTIME = 4 /* "Time" */ } NhlTickMarkStyle;
Resources
Local resources
TickMark resources are logically arranged into six groups: General - Resources of a non-specific nature Borders - Resources for drawing the grid boundary Grid lines - Resources to control major and minor grid lines Axis scaling - Resources to set the scaling of the four axes Scale labels - Labels at major tick marks Appearance - Resources that affect tick mark appearance |===============================================================| | TickMark Resource Set | |===============================================================| | General Resources | | | | Resources of a non-specific nature. | |---------------------------------------------------------------| | NAME TYPE ACCESS | | CLASS DEFAULT | |===============================================================| | tmSciNoteCutoff NhlTInteger RCSG | | TmSciNoteCutoff 6 | |---------------------------------------------------------------| | tmXUseBottom NhlTBoolean RCSG | | TmXUseBottom True | |---------------------------------------------------------------| | tmYUseLeft NhlTBoolean RCSG | | TmYUseLeft True | |---------------------------------------------------------------| | tmEqualizeXYSizes NhlTBoolean RCSG | | TmEqualizeXYSizes False | |===============================================================| | Border Resources | | | | These resources control the drawing of the grid boundary. | |---------------------------------------------------------------| | NAME TYPE ACCESS | | CLASS DEFAULT | |===============================================================| | tmXBBorderOn NhlTBoolean RCSG | | EdgesOn True | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTBorderOn NhlTBoolean RCSG | | EdgesOn True | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLBorderOn NhlTBoolean RCSG | | EdgesOn True | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRBorderOn NhlTBoolean RCSG | | EdgesOn True | |---------------------------------------------------------------| | tmBorderThicknessF NhlTFloat RCSG | | EdgeThicknessF 2.0 | |---------------------------------------------------------------| | tmBorderLineColor NhlTColorIndex RCSG | | EdgeColor "Foreground" | |===============================================================| | Grid Line Resources | | | | The following resources relate to the major and minor grid | | lines which run top to bottom or left to right across the | | graph. | |---------------------------------------------------------------| | NAME TYPE ACCESS | | CLASS DEFAULT | |===============================================================| | Major grid lines | |---------------------------------------------------------------| | tmXMajorGrid NhlTBoolean RCSG | | TmXMajorGrid False | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYMajorGrid NhlTBoolean RCSG | | TmXMajorGrid False | |---------------------------------------------------------------| | tmXMajorGridThicknessF NhlTFloat RCSG | | TmMajorGridThicknessesF 2.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYMajorGridThicknessF NhlTFloat RCSG | | TmMajorGridThicknessesF 2.0 | |---------------------------------------------------------------| | tmXMajorGridLineColor NhlTColorIndex RCSG | | LineColor "Foreground" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYMajorGridLineColor NhlTColorIndex RCSG | | LineColor "Foreground" | |---------------------------------------------------------------| | tmXMajorGridLineDashPattern NhlTDashIndex RCSG | | TmMajorGridLineDashPatterns "SolidLine" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYMajorGridLineDashPattern NhlTDashIndex RCSG | | TmMajorGridLineDashPatterns "SolidLine" | |---------------------------------------------------------------| | Minor grid lines | |---------------------------------------------------------------| | tmXMinorGrid NhlTBoolean RCSG | | TmXMinorGrid False | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYMinorGrid NhlTBoolean RCSG | | TmXMinorGrid False | |---------------------------------------------------------------| | tmXMinorGridThicknessF NhlTFloat RCSG | | TmMinorGridThicknessesF 1.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYMinorGridThicknessF NhlTFloat RCSG | | TmMinorGridThicknessesF 1.0 | |---------------------------------------------------------------| | tmXMinorGridLineColor NhlTColorIndex RCSG | | LineColor "Foreground" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYMinorGridLineColor NhlTColorIndex RCSG | | LineColor "Foreground" | |---------------------------------------------------------------| | tmXMinorGridLineDashPattern NhlTDashIndex RCSG | | TmMinorGridLineDashPatterns "SolidLine" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYMinorGridLineDashPattern NhlTDashIndex RCSG | | TmMinorGridLineDashPatterns "SolidLine" | |===============================================================| | Axis Scaling Resources | | | | The following resources relate to the four scalable axes: | | X axes (top and bottom) and Y axes (left and right). | | | | Note that tmXUseBottom can be used to cause the top axis to | | conform to the bottom axis scaling, and tmYUseLeft can be used| | to cause the right axis to conform to the left axis scaling. | |---------------------------------------------------------------| | NAME TYPE ACCESS | | CLASS DEFAULT | |===============================================================| | tmXBOn NhlTBoolean RCSG | | TmXBOn True | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTOn NhlTBoolean RCSG | | TmXTOn True | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLOn NhlTBoolean RCSG | | TmYLOn True | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYROn NhlTBoolean RCSG | | TmYROn True | |---------------------------------------------------------------| | tmXBMode NhlTTickMarkMode RCSG | | TmXBMode "Automatic" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTMode NhlTTickMarkMode RCSG | | TmXTMode "Automatic" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLMode NhlTTickMarkMode RCSG | | TmYLMode "Automatic" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRMode NhlTTickMarkMode RCSG | | TmYRMode "Automatic" | |---------------------------------------------------------------| | tmXBAutoPrecision NhlTBoolean RCSG | | TmAutoPrecision True | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTAutoPrecision NhlTBoolean RCSG | | TmAutoPrecision True | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLAutoPrecision NhlTBoolean RCSG | | TmAutoPrecision True | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRAutoPrecision NhlTBoolean RCSG | | TmAutoPrecision True | |---------------------------------------------------------------| | tmXBPrecision NhlTInteger RCSG | | TmPrecisions 4 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTPrecision NhlTInteger RCSG | | TmPrecisions 4 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLPrecision NhlTInteger RCSG | | TmPrecisions 4 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRPrecision NhlTInteger RCSG | | TmPrecisions 4 | |---------------------------------------------------------------| | tmXBFormat NhlTString RCSG | | NumberFormat "0@*+^sg" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTFormat NhlTString RCSG | | NumberFormat "0@*+^sg" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLFormat NhlTString RCSG | | NumberFormat "0@*+^sg" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRFormat NhlTString RCSG | | NumberFormat "0@*+^sg" | |---------------------------------------------------------------| | tmXBStyle NhlTTickMarkStyle RCSG | | TmXBStyle "Linear" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTStyle NhlTTickMarkStyle RCSG | | TmXTStyle "Linear" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLStyle NhlTTickMarkStyle RCSG | | TmYLStyle "Linear" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRStyle NhlTTickMarkStyle RCSG | | TmYRStyle "Linear" | |---------------------------------------------------------------| | The following Data resources relate to all axis scale modes | |---------------------------------------------------------------| | tmXBDataLeftF NhlTFloat RCSG | | TmXBDataLeftF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXBDataRightF NhlTFloat RCSG | | TmXBDataRightF 1.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTDataLeftF NhlTFloat RCSG | | TmXTDataLeftF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTDataRightF NhlTFloat RCSG | | TmXTDataRightF 1.0 | |---------------------------------------------------------------| | tmYLDataBottomF NhlTFloat RCSG | | TmYLDataBottomF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLDataTopF NhlTFloat RCSG | | TmYLDataTopF 1.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRDataBottomF NhlTFloat RCSG | | TmYRDataBottomF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRDataTopF NhlTFloat RCSG | | TmYRDataTopF 1.0 | |---------------------------------------------------------------| | The following two resources per scaled axis apply only | | when the tm**Style resource is set to "Irregular". | |---------------------------------------------------------------| | tmXBIrrTensionF NhlTFloat RCSG | | TmXBIrrTensionF 2.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTIrrTensionF NhlTFloat RCSG | | TmXTIrrTensionF 2.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLIrrTensionF NhlTFloat RCSG | | TmYLIrrTensionF 2.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRIrrTensionF NhlTFloat RCSG | | TmYRIrrTensionF 2.0 | |---------------------------------------------------------------| | tmXBIrregularPoints NhlTFloatGenArray RCSG | | TmXBIrregularPoints NULL | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTIrregularPoints NhlTFloatGenArray RCSG | | TmXTIrregularPoints NULL | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLIrregularPoints NhlTFloatGenArray RCSG | | TmYLIrregularPoints NULL | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRIrregularPoints NhlTFloatGenArray RCSG | | TmYRIrregularPoints NULL | |---------------------------------------------------------------| | The following single resource per scaled axis applies only | | when the applicable tm**Mode resource is set to "Automatic". | |---------------------------------------------------------------| | tmXBMaxTicks NhlTInteger RCSG | | TmXBMaxTicks 7 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTMaxTicks NhlTInteger RCSG | | TmXTMaxTicks 7 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLMaxTicks NhlTInteger RCSG | | TmYLMaxTicks 7 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRMaxTicks NhlTInteger RCSG | | TmYRMaxTicks 7 | |---------------------------------------------------------------| | The following three resources per scaled axis apply only | | when the applicable tm**Mode resource is set to "Manual". | |---------------------------------------------------------------| | tmXBTickStartF NhlTFloat RCSG | | TmXBTickStartF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXBTickEndF NhlTFloat RCSG | | TmXBTickEndF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXBTickSpacingF NhlTFloat RCSG | | TmXBTickSpacingF 0.0 | |---------------------------------------------------------------| | tmXTTickStartF NhlTFloat RCSG | | TmXTTickStartF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTTickEndF NhlTFloat RCSG | | TmXTTickEndF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTTickSpacingF NhlTFloat RCSG | | TmXTTickSpacingF 0.0 | |---------------------------------------------------------------| | tmYLTickStartF NhlTFloat RCSG | | TmYLTickStartF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLTickEndF NhlTFloat RCSG | | TmYLTickEndF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLTickSpacingF NhlTFloat RCSG | | TmYLTickSpacingF 0.0 | |---------------------------------------------------------------| | tmYRTickStartF NhlTFloat RCSG | | TmYRTickStartF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRTickEndF NhlTFloat RCSG | | TmYRTickEndF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRTickSpacingF NhlTFloat RCSG | | TmYRTickSpacingF 0.0 | |---------------------------------------------------------------| | The following three array resources per scaled axis apply | | only when the applicable tm**Mode resource is set to | | "Explicit". | | Their values can be retrieved for any value of tm**Mode. | |---------------------------------------------------------------| | tmXBValues NhlTFloatGenArray RCSG | | TmXBValues NULL | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXBLabels NhlTStringGenArray RCSG | | TmXBLabels NULL | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXBMinorValues NhlTFloatGenArray RCSG | | TmXBMinorValues NULL | |---------------------------------------------------------------| | tmXTValues NhlTFloatGenArray RCSG | | TmXTValues NULL | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTLabels NhlTStringGenArray RCSG | | TmXTLabels NULL | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTMinorValues NhlTFloatGenArray RCSG | | TmXTMinorValues NULL | |---------------------------------------------------------------| | tmYLValues NhlTFloatGenArray RCSG | | TmYLValues NULL | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLLabels NhlTStringGenArray RCSG | | TmYLLabels NULL | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLMinorValues NhlTFloatGenArray RCSG | | TmYLMinorValues NULL | |---------------------------------------------------------------| | tmYRValues NhlTFloatGenArray RCSG | | TmYRValues NULL | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRLabels NhlTStringGenArray RCSG | | TmYRLabels NULL | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRMinorValues NhlTFloatGenArray RCSG | | TmYRMinorValues NULL | |---------------------------------------------------------------| |===============================================================| | Label Resources | | | | The following resources relate to writing scale labels at | | major tick mark locations. | |---------------------------------------------------------------| | NAME TYPE ACCESS | | CLASS DEFAULT | |===============================================================| | tmXBLabelsOn NhlTBoolean RCSG | | TmXBLabelsOn True | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTLabelsOn NhlTBoolean RCSG | | TmXTLabelsOn False | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLLabelsOn NhlTBoolean RCSG | | TmYLLabelsOn True | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRLabelsOn NhlTBoolean RCSG | | TmYRLabelsOn False | |---------------------------------------------------------------| | tmLabelAutoStride NhlTBoolean RCSG | | LabelAutoStride False | |---------------------------------------------------------------| | tmXBLabelStride NhlTInteger RCSG | | TmXBLabelStride 0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTLabelStride NhlTInteger RCSG | | TmXTLabelStride 0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLLabelStride NhlTInteger RCSG | | TmYLLabelStride 0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRLabelStride NhlTInteger RCSG | | TmYRLabelStride 0 | |---------------------------------------------------------------| | tmXBLabelFuncCode NhlTCharacter RCSG | | TextFuncCode : | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTLabelFuncCode NhlTCharacter RCSG | | TextFuncCode : | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLLabelFuncCode NhlTCharacter RCSG | | TextFuncCode : | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRLabelFuncCode NhlTCharacter RCSG | | TextFuncCode : | |---------------------------------------------------------------| | tmXBLabelFont NhlTFont RCSG | | Font "pwritx" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTLabelFont NhlTFont RCSG | | Font "pwritx" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLLabelFont NhlTFont RCSG | | Font "pwritx" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRLabelFont NhlTFont RCSG | | Font "pwritx" | |---------------------------------------------------------------| | tmXBLabelFontHeightF NhlTFloat RCSG | | FontHeightF 0.02 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTLabelFontHeightF NhlTFloat RCSG | | FontHeightF 0.02 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLLabelFontHeightF NhlTFloat RCSG | | FontHeightF 0.02 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRLabelFontHeightF NhlTFloat RCSG | | FontHeightF 0.02 | |---------------------------------------------------------------| | tmXBLabelFontColor NhlTColorIndex RCSG | | FontColor "Foreground" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTLabelFontColor NhlTColorIndex RCSG | | FontColor "Foreground" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLLabelFontColor NhlTColorIndex RCSG | | FontColor "Foreground" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRLabelFontColor NhlTColorIndex RCSG | | FontColor "Foreground" | |---------------------------------------------------------------| | tmXBLabelFontAspectF NhlTFloat RCSG | | FontAspectF 1.3125 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTLabelFontAspectF NhlTFloat RCSG | | FontAspectF 1.3125 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLLabelFontAspectF NhlTFloat RCSG | | FontAspectF 1.3125 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRLabelFontAspectF NhlTFloat RCSG | | FontAspectF 1.3125 | |---------------------------------------------------------------| | tmXBLabelFontThicknessF NhlTFloat RCSG | | FontThicknessF 1.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTLabelFontThicknessF NhlTFloat RCSG | | FontThicknessF 1.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLLabelFontThicknessF NhlTFloat RCSG | | FontThicknesF 1.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRLabelFontThicknessF NhlTFloat RCSG | | FontThicknessF 1.0 | |---------------------------------------------------------------| | tmXBLabelFontQuality NhlTFontQuality RCSG | | FontQuality "High" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTLabelFontQuality NhlTFontQuality RCSG | | FontQuality "High" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLLabelFontQuality NhlTFontQuality RCSG | | FontQuality "High" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRLabelFontQuality NhlTFontQuality RCSG | | FontQuality "High" | |---------------------------------------------------------------| | tmXBLabelConstantSpacingF NhlTFloat RCSG | | TextConstantSpacingF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTLabelConstantSpacingF NhlTFloat RCSG | | TextConstantSpacingF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLLabelConstantSpacingF NhlTFloat RCSG | | TextConstantSpacingF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRLabelConstantSpacingF NhlTFloat RCSG | | TextConstantSpacingF 0.0 | |---------------------------------------------------------------| | tmXBLabelJust NhlTJustification RCSG | | TmXBLabelJust "TopCenter" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTLabelJust NhlTJustification RCSG | | TmXTLabelJust "BottomCenter" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLLabelJust NhlTJustification RCSG | | TmYLLabelJust "CenterRight" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRLabelJust NhlTJustification RCSG | | TmYRLabelJust "TopLeft" | |---------------------------------------------------------------| | tmXBLabelAngleF NhlTFloat RCSG | | TextAngleF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTLabelAngleF NhlTFloat RCSG | | TextAngleF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLLabelAngleF NhlTFloat RCSG | | TextAngleF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRLabelAngleF NhlTFloat RCSG | | TextAngleF 0.0 | |---------------------------------------------------------------| | tmXBLabelDirection NhlTTextDirection RCSG | | TextDirection "Across" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTLabelDirection NhlTTextDirection RCSG | | TextDirection "Across" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLLabelDirection NhlTTextDirection RCSG | | TextDirection "Across" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRLabelDirection NhlTTextDirection RCSG | | TextDirection "Across" | |---------------------------------------------------------------| | tmXBLabelDeltaF NhlTFloat RCSG | | TmXBLabelDeltaF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTLabelDeltaF NhlTFloat RCSG | | TmXTLabelDeltaF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLLabelDeltaF NhlTFloat RCSG | | TmYLLabelDeltaF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRLabelDeltaF NhlTFloat RCSG | | TmYRLabelDeltaF 0.0 | |---------------------------------------------------------------| | tmXBMaxLabelLenF NhlTFloat G | | TmXBMaxLabelLenF <dynamic> | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTMaxLabelLenF NhlTFloat G | | TmXTMaxLabelLenF <dynamic> | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLMaxLabelLenF NhlTFloat G | | TmYLMaxLabelLenF <dynamic> | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRMaxLabelLenF NhlTFloat G | | TmYRMaxLabelLenF <dynamic> | |---------------------------------------------------------------| | tmXBMinLabelSpacingF NhlTFloat G | | TmXBMinLabelSpacingF <dynamic> | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTMinLabelSpacingF NhlTFloat G | | TmXTMinLabelSpacingF <dynamic> | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLMinLabelSpacingF NhlTFloat G | | TmYLMinLabelSpacingF <dynamic> | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRMinLabelSpacingF NhlTFloat G | | TmYRMinLabelSpacingF <dynamic> | |===============================================================| | TickMark Appearance Resources | |---------------------------------------------------------------| | NAME TYPE ACCESS | | CLASS DEFAULT | |===============================================================| | tmXBMinorPerMajor NhlTInteger RCSG | | TmXMinorPerMajor <dynamic> | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTMinorPerMajor NhlTInteger RCSG | | TmXMinorPerMajor <dynamic> | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLMinorPerMajor NhlTInteger RCSG | | TmYMinorPerMajor <dynamic> | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRMinorPerMajor NhlTInteger RCSG | | TmYMinorPerMajor <dynamic> | |---------------------------------------------------------------| | tmXBMajorThicknessF NhlTFloat RCSG | | TmMajorThicknessesF 2.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTMajorThicknessF NhlTFloat RCSG | | TmMajorThicknessesF 2.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLMajorThicknessF NhlTFloat RCSG | | TmMajorThicknessesF 2.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRMajorThicknessF NhlTFloat RCSG | | TmMajorThicknessesF 2.0 | |---------------------------------------------------------------| | tmXBMajorLineColor NhlTColorIndex RCSG | | LineColor "Foreground" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTMajorLineColor NhlTColorIndex RCSG | | LineColor "Foreground" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLMajorLineColor NhlTColorIndex RCSG | | LineColor "Foreground" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRMajorLineColor NhlTColorIndex RCSG | | LineColor "Foreground" | |---------------------------------------------------------------| | tmXBMajorLengthF NhlTFloat RCSG | | TmMajorLengthsF <dynamic> | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTMajorLengthF NhlTFloat RCSG | | TmMajorLengthsF <dynamic> | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLMajorLengthF NhlTFloat RCSG | | TmMajorLengthsF <dynamic> | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRMajorLengthF NhlTFloat RCSG | | TmMajorLengthsF <dynamic> | |---------------------------------------------------------------| | tmXBMajorOutwardLengthF NhlTFloat RCSG | | TmMajorOutwardLengthsF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTMajorOutwardLengthF NhlTFloat RCSG | | TmMajorOutwardLengthsF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLMajorOutwardLengthF NhlTFloat RCSG | | TmMajorOutwardLengthsF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRMajorOutwardLengthF NhlTFloat RCSG | | TmMajorOutwardLengthsF 0.0 | |---------------------------------------------------------------| | tmXBMinorOn NhlTBoolean RCSG | | TmXBMinorOn True | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTMinorOn NhlTBoolean RCSG | | TmXTMinorOn True | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLMinorOn NhlTBoolean RCSG | | TmYLMinorOn True | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRMinorOn NhlTBoolean RCSG | | TmYRMinorOn True | |---------------------------------------------------------------| | tmXBMinorThicknessF NhlTFloat RCSG | | TmMinorThicknessesF 1.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTMinorThicknessF NhlTFloat RCSG | | TmMinorThicknessesF 1.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLMinorThicknessF NhlTFloat RCSG | | TmMinorThicknessesF 1.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRMinorThicknessF NhlTFloat RCSG | | TmMinorThicknessesF 1.0 | |---------------------------------------------------------------| | tmXBMinorLineColor NhlTColorIndex RCSG | | LineColor "Foreground" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTMinorLineColor NhlTColorIndex RCSG | | LineColor "Foreground" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLMinorLineColor NhlTColorIndex RCSG | | LineColor "Foreground" | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRMinorLineColor NhlTColorIndex RCSG | | LineColor "Foreground" | |---------------------------------------------------------------| | tmXBMinorLengthF NhlTFloat RCSG | | TmMinorLengthsF <dynamic> | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTMinorLengthF NhlTFloat RCSG | | TmMinorLengthsF <dynamic> | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLMinorLengthF NhlTFloat RCSG | | TmMinorLengthsF <dynamic> | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRMinorLengthF NhlTFloat RCSG | | TmMinorLengthsF <dynamic> | |---------------------------------------------------------------| | tmXBMinorOutwardLengthF NhlTFloat RCSG | | TmMinorOutwardLengthsF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmXTMinorOutwardLengthF NhlTFloat RCSG | | TmMinorOutwardLengthsF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYLMinorOutwardLengthF NhlTFloat RCSG | | TmMinorOutwardLengthsF 0.0 | |- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -| | tmYRMinorOutwardLengthF NhlTFloat RCSG | | TmMinorOutwardLengthsF 0.0 | |---------------------------------------------------------------|
Superclass resources
Normally, the TickMark class is being used as a composite class member of a plot class, so its superclass resources are usually overridden by the resources of the composite class. These include resources of the following superclass:
Description
The complexity of the TickMark object stems from trying to provide as much configurability as possible. The more customized you want to make your tick marks, the more resources you'll have to learn. The main function of the TickMark object is to draw a border, major tick marks, minor tick marks, and tick mark labels. Each axis is broken into two parts, a top and a bottom for the X Axis and a left and right part for the Y Axis. These four distinct parts have the same resources but with different prefixes. The X-Axis prefixes are tmXB and tmXT for the bottom and top parts of the X Axis respectively. The Y-Axis prefixes are tmYL and tmYR for the left and right parts of the Y Axis respectively. The two parts can be combined by setting the resource tmXUseBottom and tmYUseLeft resources True. What these do is copy most of the resources for the bottom tick marks into the resource for the top tick for the X Axis and the same type of operation for the Y Axis. See the description of tmXUseBottom and tmYUseLeft for a list of resources affected by setting these resources. By default tmXUseBottom and tmYUseLeft are set True.
Use as a composite class
The TickMark class is most commonly instantiated as a composite class of the PlotManager. It is one of the four types of intrinsic annotation available to plot object classes such as the XyPlot or ContourPlot. Used in this way, you no longer control some of the TickMark's resources, since the controlling PlotManager sets them automatically based on its knowledge of the data extents and the transformation in effect. However, the great majority of TickMark resources remain under your control, allowing you complete freedom to configure such things as the spacing of the tick marks, the content and appearance of the labels, and whether or not to create a grid over the data.
Modes
Each side of each axis can operate in one of three modes:
Automatic
, Manual
, or
Explicit
. Automatic
mode, the default,
depends primarily only on the resources that specify the data values
at each end of the axis. These are tmXBDataLeftF and tmXBDataRightF for the bottom X
Axis and tmYLDataTopF and
tmYLDataBottomF for the
left Y Axis. If not otherwise specified, the left and bottom data
value resources default to a value of 0.0 while the right and top
resources default to a value of 1.0. Based on the data range,
TickMark computes "nice" tick mark values with a
maximum limit on the number of major tick marks it generates. The
resources for setting the maximum tick mark limit for each axis are
tmXBMaxTicks, tmXTMaxTicks, tmYRMaxTicks, and tmYLMaxTicks.
When the TickMark is instantiated as a composite class of the PlotManager, the base plot takes care of setting the data left, right, bottom, and top resources, thus ensuring consistency with the base plot's data coordinate space.
Manual
mode uses additional resources that specify a
starting tick coordinate value, an ending tick coordinate value, and a
value that sets the spacing between the major tick marks. The
resources that control the start, end, and spacing for the bottom X
Axis are tmXBTickStartF, tmXBTickEndF, and tmXBTickSpacingF. If you do not
set the tick start or end values, the default is to use the data left
and right or top and bottom values. If you do not set the spacing
value, TickMark issues a warning message and reverts
to Automatic
mode.
Explicit
mode expects you to provide an array
containing the values of the data coordinate points for the desired
major tick marks and another array containing a list of strings to use
as the tick mark labels. You therefore have complete control over
where a tick mark is placed and what the label says. Using
Explicit
mode, you can create a different scale for each
side of the axis. For the bottom X Axis, the resource tmXBValues contains the array of values,
while tmXBLabels contains
the label strings. You may optionally also set the array resource
tmXBMinorValues to specify
the locations of minor ticks along the axis.
Styles
Tick marks currently have three different styles and will have
five styles eventually. Styles should be thought of as selecting the
type of transformation for the tick mark axis to use. The three
implemented styles are Linear
, Log
, and
Irregular
. The styles Geographic
and
Time
will be added in the near future. Setting an axis'
style to Log
means that the axis will display
Log
tick marks. The only difference between
Linear
, Log
, and Irregular
style
tick marks that the user should be aware of is when in Manual
mode, the tm...TickSpacingF resources should be set to the
number of decades to space major tick marks instead of an actual data
value. Otherwise all resources function identically regardless of
which style and mode combination is selected.
Irregular
style tick marks are a new feature for tick
marks. It allows the user to specify how data should be mapped to the
output frame. The basic concept is the user specifies a set of data
points to be evenly spaced along the axis. For the bottom X Axis you
would specify these points using the tmXBIrregularPoints
array resource. The TickMark object then sets up a
mapping and chooses tick marks in the standard way.
When the TickMark is instantiated as a composite class of the PlotManager, the base plot takes care of setting the TickMark style based on its knowledge of the data transformation currently in effect.
Label text attributes
TickMark provides for the tick labels all of the text attributes supported by the TextItem class, and the names of the resources are consistent with the conventions established for the HLU library as a whole. For example, you would set the label font for the bottom tick mark labels using the resource tmXBLabelFont. This name can be derived from the equivalent TextItem resource, txFont, by replacing the TextItem prefix tx with the prefix tmXBLabel.
Numerical label formatting
There are several levels of control available for the format of the
numerical labels that TickMark generates when
Automatic
or Manual
mode is in effect. For
each axis there is an integer and a boolean resource for controlling
the precision (number of significant digits); there is also a single
integer resource that sets, for generically formatted labels on any of
the axes, the threshold string length used to decide when to switch to
an exponential representation of the value. In addition, for each axis
there is a format string resource that allows very detailed control of
the number's appearance using the HLU Floating Point Format
Specification. It is possible to override the boolean and
integer resources by explicitly setting the format string resource in
certain ways.
For the bottom X Axis, the two resources that control the precision
are the boolean resource tmXBAutoPrecision and the integer resource
tmXBPrecision. If tmXBAutoPrecision is True,
TickMark determines an appropriate precision to use
based on the range between the minimum label value and the maximum
label value. If tmXBMode is set to
Manual
, TickMark also considers the
value of tmXBTickSpacingF
when determining the precision. Otherwise, if tmXBAutoPrecision is False, the
precision is set to the value of tmXBPrecision. Given the default
value of the string format resource tmXBFormat, the precision specifies
the number of significant digits that will be used to represent the
label with the greatest absolute value in the set of bottom X-Axis
labels. The remaining labels will have the same number of digits to
the left of the decimal point, but possibly fewer to the right, since
their assumed leftmost significant digit is set to coincide with the
actual leftmost significant digit of the maximum absolute value among
the labels. For example, if the labels range from 9 to 11 in steps of
0.5 the label strings will be output as follows: "9.0 9.5 10.0 10.5
11.0".
Many other options are possible if you change the string formatting
resource tmXBFormat from
its default value of "0@*+^sg". For instance, if you remove the "*+"
characters that cause all otherwise unspecified conversion fields to
be set dynamically, the leftmost significant digit conversion field
will assume its 'unspecified' state. TickMark will
respond by formatting each label using the actual number of
significant digits that the precision specifies. For the previous
example the resulting output would be: "9.00 9.50 10.0 10.5 11.0". If
tmXBStyle is set to
Log
, TickMark forces several of the
formatting options to ensure that only an exponential format without a
mantissa is available. Consult the HLU Floating Point Format
Specification to learn more of the details of manipulating
the output format of numerical labels. Of course, each of the other
TickMark axes has resources equivalent to the bottom
X-Axis resources discussed here.
The resource tmSciNoteCutoff applies to all TickMark labels. Assuming the applicable format string is using the 'g' or 'G' generic conversion specifier, the value of tmSciNoteCutoff determines the exponent switch length. If the number of digits required to represent the value using a non-exponential representation is less than the exponent switch length, then the non-exponential representation is used. Otherwise, the representation (exponential or non-exponential) that uses the fewest number of characters is used. You can override the value of tmSciNoteCutoff for any individual side by setting the exponent switch length conversion field explicitly in the format string.
Support functions
The TickMark object does not define any support functions, but inherits all the support functions available to its superclass.Status
1. If the coordinate values in the tm...IrregularPoints array(s) are too irregular, the irregular transformation will fail. What constitutes too irregular remains to be defined.
2. Values of the tm...TensionF parameter greater than about 10.0 cause instability in the irregular transformation.
See also
- NhlCreate function
- NhlDestroy function
- NhlSetValues function
- NhlGetValues function
- View object
- Base object