All Libraries | This Library | Package | Class | Use | Tree | Deprecated | Index | Grand Index | Help
|  | Components |
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.sas.graphics.components.waterfallchart
Class WaterfallChartModel

    com.sas.graphics.components.waterfallchart.WaterfallChartModel

    public class WaterfallChartModel

A WaterfallChartModel encapsulates most of a WaterfallChart's visual display properties. This contrasts with the WaterfallChart's data model, which determines the number and organization of data elements (bars) and the use of axes and a legend.

A WaterfallChartModel contains WaterfallChart-specific properties, common graph properties, and a collection of models that control the appearance of the graph's peripheral elements, such as its axes and legends.

A WaterfallChartModel does not allow null values for properties in its contained models. Passing a null parameter to the set method for a contained model property results in an IllegalArgumentException. Guaranteeing non-null properties for a contained model simplifies access to the display properties and ensures that the WaterfallChart's display state is unambiguous.

Topics:
  Bars
  Display Properties
  Line Styles
  Behavior
Samples:
  Swing-based Samples
  Servlet-based Samples

Since:
  SAS 9.1
See Also:
  `Graph`, `GraphStyle`, `WaterfallChart`

Field Summary
`static java.lang.String` | `defaultFinalBarID` The value of the FinalBar's default text value obtained via the Waterfall Chart's resource file.
`static java.lang.String` | `defaultInitialBarID` The value of the InitialBar's default text value obtained via the Waterfall Chart's resource file.
`static java.lang.String` | `RB_KEY`

Constructor Summary
`WaterfallChartModel()` Constructs a `WaterfallChartModel` which is assigned to a `WaterfallChart` to define most of the display properties.

Method Summary
`void` | `apply(WaterfallChartModel theOtherModel)` Utility method to convey properties contained in "theOtherModel" to this object.
`boolean` | `equals(java.lang.Object obj)` Determines whether another object is equal to this `WaterfallChartModel`.
`AxisWallModel` | `getAxisWallModel()` Returns the model that encapsulates the axis wall display properties.
`int` | `getBarShape()` Returns the bar element shape (applicable when the dimension property is GraphConstants.DIMENSION_3D).
`com.sas.measures.BaseLength` | `getBarWidth()` Returns the element width (note: the barWidth, barWidthSpace and growBarWidthEnabled properties along with the chart's displayPolicy property all play together to determine what visible width is actually given to the bar elements).
`com.sas.measures.BaseLength` | `getBarWidthSpace()` Returns the element widthSpace (note: the barWidth, barWidthSpace and growBarWidthEnabled properties along with the chart's displayPolicy property all play together to determine what visible width is actually given to the bar elements).
`AxisModel` | `getCategoryAxisModel()` Returns the model that encapsulates the display properties for the category (or independent) axis.
`int` | `getColorPaletteType()` Returns how the values of a numeric styleBy varaible are mapped to a corresponding color representation.
`GraphMatrixAxisModel` | `getColumnAxisModel()` Returns the Graph's column axis model, which contains axis' appearance preferences.
`int` | `getDimension()` Get the rendering to display the graph in 2 or 3 dimensions.
`FillStyle` | `getFinalBarFillStyle()` Deprecated. use getDataElementStyles().getFinalFillStyle();
`java.lang.String` | `getFinalBarID()` Returns the text identifying the Waterfall Chart's "Final" bar.
`FillStyle` | `getInitialBarFillStyle()` Deprecated. use getDataElementStyles().getInitialFillStyle();
`double` | `getInitialBarHeight()` Returns the height value of the Waterfall Chart's "Initial" bar.
`java.lang.String` | `getInitialBarID()` Returns the text identifying the Waterfall Chart's "Initial" bar.
`LegendModel` | `getLegendModel()` Returns the model that encapsulates the display properties for the legend.
`int` | `getMissingPolicy()` Returns the graph behavior for displaying missing values.
`int` | `getOutsideBarLabelContent()` Returns the type of textual information to be displayed outside and at the end of the bar.
`AdvancedTextStyle` | `getOutsideBarLabelTextStyle()` Returns the text appearance model that is applied to the outside label on the bar elements.
`ReferenceLineModel` | `getResponseAxisBaselineModel()` Returns the position and display attributes of the responseVaraible bar's baseline to control where the base of the bar originates from.
`AxisModel` | `getResponseAxisModel()` Returns the model that encapsulates the display properties for the response axis.
`GraphMatrixAxisModel` | `getRowAxisModel()` Returns the Graph's row axis model, which contains axis' appearance preferences.
`int` | `getSkin()` Get the style used to modify the displayed bars.
`int` | `getTrendlineType()` Returnss the type of trendline connecting successive waterfall bars.
`int` | `hashCode()` Computes the hash code for this `WaterfallChartModel`.
`boolean` | `isFinalBarEnabled()` Returns whether or not to display the Waterfall Chart's "Final" bar.
`boolean` | `isGrowBarWidthEnabled()` Returns whether or not to allow the bar's displayed width to grow beyond the barWidth property value.
`boolean` | `isMissingResponseEnabled()` Returns the graph behavior for displaying missing response values.
`boolean` | `isZeroHeightBarsVisible()` Returns whether or not to show zero height bars.
`void` | `setAxisWallModel(AxisWallModel newAxisWallModel)` Sets the model that encapsulates the display properties for the axis wall.
`void` | `setBarShape(int newBarShape)` Sets the bar element shape.
`void` | `setBarWidth(com.sas.measures.BaseLength newWidth)` Sets the element width (note: the barWidth, barWidthSpace and barGowthEnabled properties along with the chart's displayPolicy property all play together to determine what visible width is actually given to the bar elements).
`void` | `setBarWidthSpace(com.sas.measures.BaseLength newWidthSpace)` Sets the element widthSpace (note: the barWidth, barWidthSpace and growBarWidthEnabled properties along with the chart's displayPolicy property all play together to determine what visible width is actually given to the bar elements).
`void` | `setCategoryAxisModel(AxisModel newAxisModel)` Sets the model that encapsulates the display properties for the category (or independent) axis.
`void` | `setColorPaletteType(int newColorPaletteType)` Sets how the values of a numeric styleBy variable are mapped to a corresponding color representation.
`void` | `setColumnAxisModel(GraphMatrixAxisModel newAxisModel)` Set the Graph's column axis model, which contains axis' appearance preferences.
`void` | `setDimension(int newDimension)` Set the rendering to display the graph in 2 or 3 dimensions.
`void` | `setFinalBarEnabled(boolean finalBarEnabled)` Sets whether or not to display the Waterfall Chart's "Final" bar.
`void` | `setFinalBarFillStyle(FillStyle finalFillStyle)` Deprecated. use getDataElementStyles().setFinalFillStyle(finalFillStyle);
`void` | `setFinalBarID(java.lang.String finalBarValue)` Sets the text identifying the Waterfall Chart's "Final" bar.
`void` | `setGrowBarWidthEnabled(boolean newGrowBarWidthEnabled)` Sets whether or not to allow the bar's displayed width to grow beyond the barWidth property value.
`void` | `setInitialBarFillStyle(FillStyle initialFillStyle)` Deprecated. use getDataElementStyles().setInitialFillStyle(initialFillStyle);
`void` | `setInitialBarHeight(double initialBarHeight)` Sets the height value of the Waterfall Chart's "Initial" bar.
`void` | `setInitialBarID(java.lang.String initialBarValue)` Sets the text identifying the Waterfall Chart's "Initial" bar.
`void` | `setLegendModel(LegendModel newLegendModel)` Sets the model that encapsulates the display properties for the legend.
`void` | `setMissingPolicy(int newMissing)` Sets the graph behavior for displaying missing values.
`void` | `setMissingResponseEnabled(boolean newMissingEnabled)` Sets the graph behavior for displaying missing response values (the default is false).
`void` | `setOutsideBarLabelContent(int newContent)` Sets the type of textual information to be displayed outside and at the end of the bar.
`void` | `setOutsideBarLabelTextStyle(AdvancedTextStyle newTextStyle)` Sets the text appearance model that is applied to the outside label on the bar elements.
`void` | `setResponseAxisBaselineModel(ReferenceLineModel newBaselineModel)` Set the position and display attributes of the responseVaraible bar's baseline to control where the base of the bar originates from.
`void` | `setResponseAxisModel(AxisModel newAxisModel)` Sets the model that encapsulates the display properties for the response axis.
`void` | `setRowAxisModel(GraphMatrixAxisModel newAxisModel)` Set the Graph's row axis model, which contains axis' appearance preferences.
`void` | `setSkin(int newSkin)` Set the style of skin to modify the bar slice appearance.
`void` | `setTrendlineType(int newTrendlineType)` Sets the type of trendline connecting successive waterfall bars.
`void` | `setZeroHeightBarsVisible(boolean newShowZerosEnabled)` Sets whether or not to show zero height bars.

Methods inherited from class com.sas.graphics.components.GraphModel
`apply, getBackgroundFillStyle, getBrushModel, getDataElementStyles, getDataTipModel, getFrameLineStyle, getLogo, getLogoJustification, isAntialiasedGraphics, isAntialiasedText, setAntialiasedGraphics, setAntialiasedText, setBackgroundFillStyle, setBrushModel, setDataElementStyles, setDataTipModel, setFrameLineStyle, setLogo, setLogoJustification`

Methods inherited from class com.sas.graphics.components.ModelBase
`addPropertyChangeListener, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, removePropertyChangeListener, setContainedModel`

Field Detail

### RB_KEY

    public static final java.lang.String RB_KEY

See Also:
  Constant Field Values

### defaultFinalBarID

    public static final java.lang.String defaultFinalBarID

  The value of the FinalBar's default text value obtained via the Waterfall Chart's resource file. Note: This method is provided for easy access to resetting the FinalBar ID value back to its default value.

  See Also:
    `setFinalBarID(java.lang.String)`

### defaultInitialBarID

    public static final java.lang.String defaultInitialBarID

  The value of the InitialBar's default text value obtained via the Waterfall Chart's resource file. Note: This method is provided for easy access to resetting the InitialBar ID value back to its default value.

  See Also:
    `setInitialBarID(java.lang.String)`

Constructor Detail

### WaterfallChartModel

    public WaterfallChartModel()

  Constructs a `WaterfallChartModel` which is assigned to a `WaterfallChart` to define most of the display properties.

Method Detail

### apply

    public void apply(WaterfallChartModel theOtherModel)

  Utility method to convey properties contained in "theOtherModel" to this object.
  Note: Contained "models" (i.e. properties that are subclasses of ModelBase) will in turn be called on to convey their properties to the like contained models in the other object. In that respect this can be considered a "tree" type copy.
  Also Note: This is a deep copy. Thus after the copy, mutable properties will not be shared by the two instances.

  Parameters:
    `theOtherModel` - properties applied to this instance

### equals

    public boolean equals(java.lang.Object obj)

  Determines whether another object is equal to this `WaterfallChartModel`.

  The result is `true` if and only if the argument is not `null` and is a `WaterfallChartModel` object that has the same property values as this object.

  Overrides:
    `equals` in class `GraphModel`
  Parameters:
    `obj` - the object to test for equality with this `WaterfallChartModel`
  Returns:
    `true` if the objects are the same; `false` otherwise.

### hashCode

    public int hashCode()

  Computes the hash code for this `WaterfallChartModel`.

  Overrides:
    `hashCode` in class `GraphModel`
  Returns:
    a hash code value for this object.

### setRowAxisModel

    public void setRowAxisModel(GraphMatrixAxisModel newAxisModel)
                         throws java.lang.IllegalArgumentException

  Set the Graph's row axis model, which contains axis' appearance preferences. The row axis appears when the Graph's "Row" variable is assigned to a valid data column. The row Axis manages groups of rows.

  Parameters:
    `newAxisModel` - row axis display attributes
  Throws:
    `java.lang.IllegalArgumentException` - if newAxisModel is null.
  See Also:
    `getRowAxisModel()`, `GraphMatrixAxisModel.apply(com.sas.graphics.components.GraphMatrixAxisModel)`

### getRowAxisModel

    public GraphMatrixAxisModel getRowAxisModel()

  Returns the Graph's row axis model, which contains axis' appearance preferences. The row axis appears when the Graph's "Row" variable is assigned to a valid data column. The row Axis manages groups of rows.

  Returns:
    GraphMatrixAxisModel
  See Also:
    `setRowAxisModel(com.sas.graphics.components.GraphMatrixAxisModel)`, `getColumnAxisModel()`

### setColumnAxisModel

    public void setColumnAxisModel(GraphMatrixAxisModel newAxisModel)
                            throws java.lang.IllegalArgumentException

  Set the Graph's column axis model, which contains axis' appearance preferences. The column axis appears when the Graph's "Column" variable is assigned to a valid data column. The column Axis manages groups of columns.

  Parameters:
    `newAxisModel` - the column axis display attributes
  Throws:
    `java.lang.IllegalArgumentException` - if newAxisModel is null.
  See Also:
    `getColumnAxisModel()`, `GraphMatrixAxisModel.apply(com.sas.graphics.components.GraphMatrixAxisModel)`

### getColumnAxisModel

    public GraphMatrixAxisModel getColumnAxisModel()

  Returns the Graph's column axis model, which contains axis' appearance preferences. The column axis appears when the Graph's "Column" variable is assigned to a valid data column. The column Axis manages groups of columns.

  Returns:
    GraphMatrixAxisModel
  See Also:
    `setColumnAxisModel(com.sas.graphics.components.GraphMatrixAxisModel)`, `getRowAxisModel()`

### setResponseAxisModel

    public void setResponseAxisModel(AxisModel newAxisModel)
                              throws java.lang.IllegalArgumentException

  Sets the model that encapsulates the display properties for the response axis. The response axis (or dependent axis) is used to measure the size of the data elements (bars).

  Parameters:
    `newAxisModel` - a model that encapsulates axis display properties.
  Throws:
    `java.lang.IllegalArgumentException` - if newAxisModel is null.
  See Also:
    `getResponseAxisModel()`

### getResponseAxisModel

    public AxisModel getResponseAxisModel()

  Returns the model that encapsulates the display properties for the response axis.

  Returns:
    the axis model that encapsulates the display properties for the response axis
  See Also:
    `setResponseAxisModel(com.sas.graphics.components.AxisModel)`

### setCategoryAxisModel

    public void setCategoryAxisModel(AxisModel newAxisModel)
                              throws java.lang.IllegalArgumentException

  Sets the model that encapsulates the display properties for the category (or independent) axis. The values defined by the categoryVariable role in the WaterfallChartTableDatamodel are displayed on the category axis. The 1st dimension on the OLAP data's column axis is dislayed on the WaterfallChart's category axis (by default, see the WaterfallChartOLAPDataModel for additional options).

  Parameters:
    `newAxisModel` - a model that encapsulates axis display properties.
  Throws:
    `java.lang.IllegalArgumentException` - if newAxisModel is null.
  See Also:
    `getCategoryAxisModel()`, `AxisModel.apply(com.sas.graphics.components.AxisModel)`

### getCategoryAxisModel

    public AxisModel getCategoryAxisModel()

  Returns the model that encapsulates the display properties for the category (or independent) axis.

  Returns:
    the axis model that encapsulates the display properties for the category (or independent) axis.
  See Also:
    `setCategoryAxisModel(com.sas.graphics.components.AxisModel)`

### setAxisWallModel

    public void setAxisWallModel(AxisWallModel newAxisWallModel)
                          throws java.lang.IllegalArgumentException

  Sets the model that encapsulates the display properties for the axis wall. The axis wall appears in the area between the response and category axis.

  Parameters:
    `newAxisWallModel` - a model that encapsulates axis wall display properties.
  Throws:
    `java.lang.IllegalArgumentException` - if newAxisWallModel is null.
  See Also:
    `getAxisWallModel()`, `AxisWallModel.apply(com.sas.graphics.components.AxisWallModel)`

### getAxisWallModel

    public AxisWallModel getAxisWallModel()

  Returns the model that encapsulates the axis wall display properties.

  Returns:
    the axis wall model that encapsulates the display properties for the area between the response and category axes.
  See Also:
    `setAxisWallModel(com.sas.graphics.components.AxisWallModel)`

### setLegendModel

    public void setLegendModel(LegendModel newLegendModel)
                        throws java.lang.IllegalArgumentException

  Sets the model that encapsulates the display properties for the legend. If the graph is displaying subgrouped bars then each fill style represents a different subgroup value. The subgroupVariable role in the WaterfallChartTableDataModel can be used to define the subgroup values.
  If the graph is displaying multiple responses (and no subgrouped bars) then the legend entry represents each different data column (or measure if using OLAP data).

  The legend displays the association between fill style and data value, data column or measure.

  Parameters:
    `newLegendModel` - a model that encapsulates legend display properties.
  Throws:
    `java.lang.IllegalArgumentException` - if newLegendModel is null.
  See Also:
    `getLegendModel()`, `LegendModel.apply(com.sas.graphics.components.LegendModel)`, `WaterfallChartOLAPDataModel`

### getLegendModel

    public LegendModel getLegendModel()

  Returns the model that encapsulates the display properties for the legend.

  Returns:
    the legend model that encapsulates the display properties for the legend.
  See Also:
    `setLegendModel(com.sas.graphics.components.LegendModel)`

### setResponseAxisBaselineModel

    public void setResponseAxisBaselineModel(ReferenceLineModel newBaselineModel)
                                      throws java.lang.IllegalArgumentException

  Set the position and display attributes of the responseVaraible bar's baseline to control where the base of the bar originates from. Note: This baseline position only pertains to bars displaying values from the responseVariable values and is only applicable if and only if the bars are not stacked. When stacked the baseline position is always 0.

  Parameters:
    `newBaselineModel` - the baseline model for the responseVariable bar(s)
  Throws:
    `java.lang.IllegalArgumentException` - if newBaselineModel is null.
  See Also:
    `getResponseAxisBaselineModel()`

### getResponseAxisBaselineModel

    public ReferenceLineModel getResponseAxisBaselineModel()

  Returns the position and display attributes of the responseVaraible bar's baseline to control where the base of the bar originates from. Note: This baseline position only pertains to bars displaying values from the responseVariable values and is only applicable if and only if the bars are not stacked. When stacked the baseline position is always 0.

  Returns:
    the baseline model for the responseVariable bar(s)
  See Also:
    `setResponseAxisBaselineModel(com.sas.graphics.components.ReferenceLineModel)`

### setDimension

    public void setDimension(int newDimension)
                      throws java.lang.IllegalArgumentException

  Set the rendering to display the graph in 2 or 3 dimensions. Valid values are:
  GraphConstants.DIMENSION_2D, GraphConstants.DIMENSION_3D

  The default is GraphConstants.DIMENSION_2D.

  Parameters:
    `newDimension` - how many dimensions the graph will be rendered in
  Throws:
    `java.lang.IllegalArgumentException` - if newDimension is invalid.
  See Also:
    `getDimension()`

### getDimension

    public int getDimension()

  Get the rendering to display the graph in 2 or 3 dimensions.

  Returns:
    how many dimensions the graph will be rendered in
  See Also:
    `setDimension(int)`

### setBarShape

    public void setBarShape(int newBarShape)

  Sets the bar element shape.
  Valid values are:
  - GraphConstants.BAR_SHAPE_BLOCK (default)
  - GraphConstants.BAR_SHAPE_CYLINDER
  This property is only applicable when the dimension property is GraphConstants.DIMENSION_3D.

  Parameters:
    `newBarShape` - the desired bar shape
  Throws:
    `java.lang.IllegalArgumentException` - if newBarShape is invalid.
  See Also:
    `getBarShape()`

### getBarShape

    public int getBarShape()

  Returns the bar element shape (applicable when the dimension property is GraphConstants.DIMENSION_3D).

  Returns:
    the shape of the bar element
  See Also:
    `setBarShape(int)`

### setBarWidth

    public void setBarWidth(com.sas.measures.BaseLength newWidth)
                     throws java.lang.IllegalArgumentException

  Sets the element width (note: the barWidth, barWidthSpace and barGowthEnabled properties along with the chart's displayPolicy property all play together to determine what visible width is actually given to the bar elements).

  Parameters:
    `newWidth` - the desired width of the bar
  Throws:
    `java.lang.IllegalArgumentException` - if newWidth is null.
  See Also:
    `setBarWidthSpace(com.sas.measures.BaseLength)`, `setGrowBarWidthEnabled(boolean)`, `Graph.setDisplayPolicy(int)`, `getBarWidth()`

### getBarWidth

    public com.sas.measures.BaseLength getBarWidth()

  Returns the element width (note: the barWidth, barWidthSpace and growBarWidthEnabled properties along with the chart's displayPolicy property all play together to determine what visible width is actually given to the bar elements).

  Returns:
    bar width set for bar data elements
  See Also:
    `getBarWidthSpace()`, `isGrowBarWidthEnabled()`, `Graph.getDisplayPolicy()`, `setBarWidth(com.sas.measures.BaseLength)`

### setBarWidthSpace

    public void setBarWidthSpace(com.sas.measures.BaseLength newWidthSpace)
                          throws java.lang.IllegalArgumentException

  Sets the element widthSpace (note: the barWidth, barWidthSpace and growBarWidthEnabled properties along with the chart's displayPolicy property all play together to determine what visible width is actually given to the bar elements).

  Parameters:
    `newWidthSpace` - the desired gap between bar elements
  Throws:
    `java.lang.IllegalArgumentException` - if newWidthSpace is null.
  See Also:
    `setBarWidth(com.sas.measures.BaseLength)`, `setGrowBarWidthEnabled(boolean)`, `Graph.setDisplayPolicy(int)`, `getBarWidth()`

### getBarWidthSpace

    public com.sas.measures.BaseLength getBarWidthSpace()

  Returns the element widthSpace (note: the barWidth, barWidthSpace and growBarWidthEnabled properties along with the chart's displayPolicy property all play together to determine what visible width is actually given to the bar elements).

  Returns:
    the desired gap between bar elements
  See Also:
    `getBarWidth()`, `isGrowBarWidthEnabled()`, `Graph.getDisplayPolicy()`, `setBarWidthSpace(com.sas.measures.BaseLength)`

### setGrowBarWidthEnabled

    public void setGrowBarWidthEnabled(boolean newGrowBarWidthEnabled)

  Sets whether or not to allow the bar's displayed width to grow beyond the barWidth property value. If grow bar width is enabled and the available display space is larger then what is needed by the chart for the defined barWidth and barSpace properties then there are 2 possibilities: (1) display the bars using the specified barWidth property but allow the displayed bar space to grow beyond the barWidthSpace property value or (2) allow the displayed bar width and the displayed bar space to grow beyond the barwidth and barWidthSpace property values (but ensuring that the growth is proportioned to the specified values).

  The default value is true.

  Parameters:
    `newGrowBarWidthEnabled` - - true means to allow the bar elements to grow if there is available space
  See Also:
    `setBarWidth(com.sas.measures.BaseLength)`, `setBarWidthSpace(com.sas.measures.BaseLength)`, `Graph.setDisplayPolicy(int)`, `getBarWidth()`

### isGrowBarWidthEnabled

    public boolean isGrowBarWidthEnabled()

  Returns whether or not to allow the bar's displayed width to grow beyond the barWidth property value.

  Returns:
    whether or not to allow the bar's displayed width to grow beyond the barWidth property value.
  See Also:
    `getBarWidth()`, `getBarWidthSpace()`, `Graph.getDisplayPolicy()`, `setGrowBarWidthEnabled(boolean)`

### setZeroHeightBarsVisible

    public void setZeroHeightBarsVisible(boolean newShowZerosEnabled)

  Sets whether or not to show zero height bars. The default value is true. Note: zero height is not the same as a response value of 0. If the bar's response value is the same value as its associated baseline then it will have a zero height.

  Parameters:
    `newShowZerosEnabled` - true means that if zero height bars are present then they are displayed (which will act as a place holder).
  See Also:
    `isZeroHeightBarsVisible()`

### isZeroHeightBarsVisible

    public boolean isZeroHeightBarsVisible()

  Returns whether or not to show zero height bars.

  Returns:
    true zero height bars are allowed
  See Also:
    `setZeroHeightBarsVisible(boolean)`

### setMissingResponseEnabled

    public void setMissingResponseEnabled(boolean newMissingEnabled)

  Sets the graph behavior for displaying missing response values (the default is false). (Similar to setMissingPolicy but this is the behavior applied to missing response values.)

  Note: missing response values (Ex. com.sas.MissingValues.Dot ) obviously do not have a representable response and as such no bar will be produced. However this option is available to control whether or not the classification values associated with missing response values are represented in the graph. For instance if you have categories "A", "B" and "C" with associated response values 5, 10 and MissingValues.Dot then the resulting graph would display a category axis with "A" and "B". If you set the missingResponseEnabled to true then "C" will also appear in the graph (however "C" will not display an associated bar).

  Subgroup values with associated missing values are not assigned a display attributes (colors, symbols) etc unless the missingResponseEnabled property is set to true. This mechanism may be useful in controlling display attribute mapping between graphs via data values embedded in the data source.

  Special note:
  The following String values are interpreted as missing values:

  - null
  - any string value that cannot be informatted into a numerical value
  - a non-String object in a String data column

  The following Number values are interpreted as missing values:

  - null
  - com.sas.MissingValues objects
  - a non-Number object in a Number data column
  - Double.NaN
  - Double.POSITIVE_INFINITY
  - Double.NEGATIVE_INFINITY

  Parameters:
    `newMissingEnabled` - true means represent missing response values in the graph
  See Also:
    `isMissingResponseEnabled()`

### isMissingResponseEnabled

    public boolean isMissingResponseEnabled()

  Returns the graph behavior for displaying missing response values.

  Returns:
    whether or not missing response values are represented in the graph
  See Also:
    `setMissingResponseEnabled(boolean)`

### setMissingPolicy

    public void setMissingPolicy(int newMissing)
                          throws java.lang.IllegalArgumentException

  Sets the graph behavior for displaying missing values. (Similar to the server side "missing" statement in prog gchart.)
  Valid values are:
  - GraphConstants.AUTOMATIC (default)
  - GraphConstants.TRUE
  - GraphConstants.FALSE
  GraphConstants.AUTOMATIC is the same as the server side proc gchart default (which is to display all classification variable missing values except category).
  GraphConstants.TRUE is the same as the server side gchart behavior with the "missing" statement (which is to display all all classification variable missing values (including category)).
  GraphConstants.FALSE means don't display any classification variable missing values.

  Special note:
  The following String values are interpreted as missing values:

  - null
  - com.sas.MissingValues objects
  - zero length string
  - a string containing only spaces

  The following Number values are interpreted as missing values:

  - null
  - com.sas.MissingValues objects
  - a non-Number objects in a Number data column
  - Double.NaN
  - Double.POSITIVE_INFINITY
  - Double.NEGATIVE_INFINITY

  Throws:
    `java.lang.IllegalArgumentException` - if newMissing is invalid.
  See Also:
    `getMissingPolicy()`

### getMissingPolicy

    public int getMissingPolicy()

  Returns the graph behavior for displaying missing values.

  Returns:
    how to display classification variable missing values.
  See Also:
    `setMissingPolicy(int)`

### setOutsideBarLabelContent

    public void setOutsideBarLabelContent(int newContent)

  Sets the type of textual information to be displayed outside and at the end of the bar. Valid values are :
  - `GraphConstants.DATA_LABEL_AUTOMATIC`
  - `GraphConstants.DATA_LABEL_NONE`
  - `GraphConstants.DATA_LABEL_CATEGORY`
  - `GraphConstants.DATA_LABEL_RESPONSE`
  - `GraphConstants.DATA_LABEL_SUM`
  - `GraphConstants.DATA_LABEL_MEAN`
  - `GraphConstants.DATA_LABEL_PERCENT`

  Parameters:
    `newContent` - the type of textual information to be displayed outside and at the end of the bar
  Throws:
    `java.lang.IllegalArgumentException` - if an invalid parameter value is specified.
  See Also:
    `getOutsideBarLabelContent()`

### getOutsideBarLabelContent

    public int getOutsideBarLabelContent()

  Returns the type of textual information to be displayed outside and at the end of the bar.

  Returns:
    the type of textual information to be displayed outside and at the end of the bar
  See Also:
    `setOutsideBarLabelContent(int)`

### setOutsideBarLabelTextStyle

    public void setOutsideBarLabelTextStyle(AdvancedTextStyle newTextStyle)
                                     throws java.lang.IllegalArgumentException

  Sets the text appearance model that is applied to the outside label on the bar elements.

  Parameters:
    `newTextStyle` - the new repository for the outside bar label's display attributes
  Throws:
    `java.lang.IllegalArgumentException` - if newTextStyle is null.
  See Also:
    `getOutsideBarLabelTextStyle()`, `AdvancedTextStyle.apply(com.sas.graphics.components.AdvancedTextStyle)`

### getOutsideBarLabelTextStyle

    public AdvancedTextStyle getOutsideBarLabelTextStyle()

  Returns the text appearance model that is applied to the outside label on the bar elements.

  Returns:
    text attributes for the outside bar label text
  See Also:
    `setOutsideBarLabelTextStyle(com.sas.graphics.components.AdvancedTextStyle)`

### setFinalBarEnabled

    public void setFinalBarEnabled(boolean finalBarEnabled)

  Sets whether or not to display the Waterfall Chart's "Final" bar.

  Parameters:
    `finalBarEnabled` - true means to display the resulting "Final" bar.
  See Also:
    `isFinalBarEnabled()`

### isFinalBarEnabled

    public boolean isFinalBarEnabled()

  Returns whether or not to display the Waterfall Chart's "Final" bar.

  Returns:
    true if the "Final" Waterfall Chart bar is displayed.
  See Also:
    `setFinalBarEnabled(boolean)`

### setFinalBarID

    public void setFinalBarID(java.lang.String finalBarValue)

  Sets the text identifying the Waterfall Chart's "Final" bar. Note: this text value only appears if the WaterfallFinalBarEnabled property is true. The default value is obtained from the Waterfall Chart's resource file. Note: null is a valid value and indicates that no text value is to be displayed along the axis.

  Parameters:
    `finalBarValue` - the text value identifying the Waterfall Chart's "Final" bar
  See Also:
    `getFinalBarID()`

### getFinalBarID

    public java.lang.String getFinalBarID()

  Returns the text identifying the Waterfall Chart's "Final" bar.

  Returns:
    the text identifying the Waterfall Chart's "Final" bar
  See Also:
    `setFinalBarID(java.lang.String)`

### setFinalBarFillStyle

    public void setFinalBarFillStyle(FillStyle finalFillStyle)

  Deprecated. use getDataElementStyles().setFinalFillStyle(finalFillStyle);

### getFinalBarFillStyle

    public FillStyle getFinalBarFillStyle()

  Deprecated. use getDataElementStyles().getFinalFillStyle();

### setInitialBarHeight

    public void setInitialBarHeight(double initialBarHeight)

  Sets the height value of the Waterfall Chart's "Initial" bar. Double.NaN is the default and indicates that the initial bar is not to be displayed. the initial bar is NOT to be displayed. The initial bar is only displayed if the initial bar value is a real double value (i.e. not Double.NaN or infinity).

  Parameters:
    `initialBarHeight` - the value of the Initial bar.
  See Also:
    `getInitialBarHeight()`

### getInitialBarHeight

    public double getInitialBarHeight()

  Returns the height value of the Waterfall Chart's "Initial" bar.

  Returns:
    the height value of the Waterfall Chart's "Initial" bar.
  See Also:
    `setInitialBarHeight(double)`

### setInitialBarID

    public void setInitialBarID(java.lang.String initialBarValue)

  Sets the text identifying the Waterfall Chart's "Initial" bar. Note: this text value only appears if the Initial Bar is displayed (i.e. if the initialBarHeight property value is a real double value (not Double.NaN or infinity)). The default text value is obtained from the Waterfall Chart's resource file. Note: null is a valid value and indicates that no text value is to be displayed along the axis.

  Parameters:
    `initialBarValue` - the text value identifying the Waterfall Chart's "Initial" bar
  See Also:
    `getInitialBarID()`

### getInitialBarID

    public java.lang.String getInitialBarID()

  Returns the text identifying the Waterfall Chart's "Initial" bar.

  Returns:
    the text identifying the Waterfall Chart's "Initial" bar
  See Also:
    `setInitialBarID(java.lang.String)`

### setInitialBarFillStyle

    public void setInitialBarFillStyle(FillStyle initialFillStyle)

  Deprecated. use getDataElementStyles().setInitialFillStyle(initialFillStyle);

### getInitialBarFillStyle

    public FillStyle getInitialBarFillStyle()

  Deprecated. use getDataElementStyles().getInitialFillStyle();

### setTrendlineType

    public void setTrendlineType(int newTrendlineType)

  Sets the type of trendline connecting successive waterfall bars.
  Valid values are:
  - `GraphConstants.TRENDLINE_NONE`
  - `GraphConstants.TRENDLINE_VALUE` (default)
  - `GraphConstants.TRENDLINE_BASE`
  `GraphConstants.TRENDLINE_NONE` will not display a trendline. `GraphConstants.TRENDLINE_VALUE` displays a trendline joining the ending position from one bar to teh ending position of the successive bar. `GraphConstants.TRENDLINE_BASE` displays a trendline joining the ending position from one bar to the base position (or starting position) of the successive bars. Please note: Currently the trendline is only supported when `dimension` is `GraphConstatnts.DIMENSION_2D`.

  The trendline borrows all of its display properties bar's outline line style except for it coloring. The trendline is colored by the `DataElementStyles`'s countinuousThreeColor properties. The `continuousContrastThreeColorStartColor` property is applied to the sections of the trend line that have an ascending slope (i.e. the following bar is positive). The `continuousContrastThreeColorEndColor` property is applied to the sections of the trend line that have an descending slope (i.e. the following bar is negative). The `continuousContrastThreeColorNeutralColor` property is applied to the sections of the trend line that have no slope (i.e. the following bar is 0). These colors will depend upon what graphStyle has been applied. A typical override to these settings are to set the start color to `Color.green`, set the end color to `Color.red` and set the neutral color to `Color.black` or the same color as the bar's outline color.

  Parameters:
    `newTrendlineType` - type of trendline
  See Also:
    `DataElementStyles.setContinuousContrastThreeColorStartColor(java.awt.Color)`, `DataElementStyles.setContinuousContrastThreeColorNeutralColor(java.awt.Color)`, `DataElementStyles.setContinuousContrastThreeColorEndColor(java.awt.Color)`, `DataElementStyles.setOutlineLineStyle(com.sas.graphics.components.LineStyle)`, `GraphConstants.TRENDLINE_NONE`, `GraphConstants.TRENDLINE_VALUE`, `GraphConstants.TRENDLINE_BASE`, `getTrendlineType()`

### getTrendlineType

    public int getTrendlineType()

  Returnss the type of trendline connecting successive waterfall bars.

  Returns:
    true if the trendline is displayed.
  See Also:
    `setTrendlineType(int)`

### setColorPaletteType

    public void setColorPaletteType(int newColorPaletteType)
                             throws java.lang.IllegalArgumentException

  Sets how the values of a numeric styleBy variable are mapped to a corresponding color representation.
  Valid values are:
  - GraphConstants.COLOR_PALETTE_TWO_COLOR_DISCRETE (default)
  - GraphConstants.COLOR_PALETTE_TWO_COLOR_CONTINUOUS
  - GraphConstants.COLOR_PALETTE_THREE_COLOR_DISCRETE
  - GraphConstants.COLOR_PALETTE_THREE_COLOR_CONTINUOUS
  - GraphConstants.COLOR_PALETTE_COLOR_SPECTRUM
  To explain this mapping it is necessary to understand the graph's resulting "min" "max" and "baseline" values (i.e. the min, max and baseline values pertaining to the styleBy variable values). The `LegendModel`has 4 properties {`minimum`, `maximum`, `baseline`, `symmetricEnabled`} that can affect the graph's resulting min, max and baseline values. Typically the `LegendModel`'s `minimum` and `maximum` values (default of Double.NaN) are not be specified and result in the graph computing the resulting min and max values from the styleBy variable data. However if the `LegendModel`'s `minimum` and `maximum` values are specified then they override the graph's computed min and max values. Specifying a `maximum` or `maximum` on the `LegendModel`has the inherent risk of improperly defining the data range (i.e. this specified range not encompassing the styleBy variables data range). If this happens the specified range is still honored by the legend and any data values that extend beyond the specified range are colored by that color value mapped to the boundary which was breached. For example if a user defined max value of 100 was specified then any data values greater than 100 would be mapped to the the same color as 100.
  Note: a warning message is when rendering if on the `LegendModel`:
  - the `minimum` is specified and `baseline` is less than `minimum`
  - the `maximum` is specified and `baseline` is greater than `maximum`
  - the `maximum` is specified less than `minimum`

  The `LegendModel`'s `baseline` value (default of 0.0) is treated somewhat differently from `maximum` and `minimum` in determining the graph's resulting min/max range. The `LegendModel`'s `baseline` value is treated as if it were a data value when the graph is computing its resulting min and max values. If the `LegendModel`'s `baseline` value is set to Double.NaN then the graph's resulting baseline value is computed to be the midpoint of the resulting min/max range. Note: The `LegendModel`'s `baseline` value may only affect the graphs resulting maximum if `LegendModel`'s `maximum` has not been specified. Likewise `baseline` may affect the graphs resulting minimum if `minimum` has not been specified.
  The `LegendModel`'s `symetricEnabled` value (default of false) is only applicable when `maximum` and `minimum` have not been specified and `baseline` has been specified. If `symmetricEnabled` is true then the graph's computed min/max range will encompass the data range and be symmetric about the baseline.````````````

  Applying colors to the resulting range:

  A value of `GraphConstants.COLOR_PALETTE_TWO_COLOR_CONTINUOUS` indicates that the `DataElementStyles`' `continuousFillTwoColor` values are applied graduating the colors from min to max.

  A value of `GraphConstants.COLOR_PALETTE_TWO_COLOR_DISCRETE` indicates that the `DataElementStyles`' `continuousFillTwoColor` values are applied. Any value falling between min and baseline (not including baseline) are mapped to `DataElementStyles`' `continuousFillTwoColorStartColor` color. Values falling between the baseline (including the baseline) and max are colored `DataElementStyles`' `continuousFillTwoColorEndColor`.

  A value of `GraphConstants.COLOR_PALETTE_THREE_COLOR_CONTINUOUS` indicates that the `DataElementStyles`' `continuousFillThreeColor` values are applied gradating between the start and neutral colors from min to baseline and then gradate between the neutral and end colors from baseline to max.

  A value of `GraphConstants.COLOR_PALETTE_THREE_COLOR_DISCRETE` indicates that the `DataElementStyles`' `continuousFillThreeColor` values are applied. Any value falling between min and baseline (not including baseline) are mapped to `DataElementStyles`' `continuousFillThreeColorStartColor` color. Values equal to the baseline value are colored `DataElementStyles`' `continuousFillThreeColorNeutralColor`. Values falling between the baseline (not including the baseline) and max are colored `DataElementStyles`' `continuousFillThreeColorEndColor`.

  A value of `GraphConstants.COLOR_PALETTE_COLOR_SPECTRUM` indicates that the `DataElementStyles`' `continuousColorSpectrum` values should be mapped to the corresponding data value. The color spectrum defines the mapping in percentages along a normalized range or 0.0 to 1.0. Note: Although the `LegendModel`'s `baseline` value is still considered when deterining the resulting min/max range, the baseline value is not mapped to any specific color when using the `DataElementStyles`' `continuousColorSpectrum`.

  ``````````
  Parameters:
    `newColorPaletteType` - defines which set of colors to apply when a numeric styleBy variable has been assigned.
  Throws:
    `java.lang.IllegalArgumentException` - if newColorPaletteType is invalid.
  See Also:
    `getColorPaletteType()`

### getColorPaletteType

    public int getColorPaletteType()

  Returns how the values of a numeric styleBy varaible are mapped to a corresponding color representation.

  Returns:
    the an indicator of which set of colors to apply when a numeric styleBy variable has been assigned.
  See Also:
    `setColorPaletteType(int)`

### setSkin

    public void setSkin(int newSkin)
                 throws java.lang.IllegalArgumentException

  Set the style of skin to modify the bar slice appearance. Skins are not supported with 3D bars. Valid values are:
  GraphConstants.SKIN_AUTOMATIC, GraphConstants.SKIN_NONE GraphConstants.SKIN_MODERN

  The default is GraphConstants.SKIN_AUTOMATIC.

  Parameters:
    `newSkin` - Which skin style to use
  Throws:
    `java.lang.IllegalArgumentException` - if newSkin is invalid.
  See Also:
    `getSkin()`

### getSkin

    public int getSkin()

  Get the style used to modify the displayed bars.

  Returns:
    current skin definition
  See Also:
    `setSkin(int)`

All Libraries | This Library | Package | Class | Use | Tree | Deprecated | Index | Grand Index | Help
|  | Components |
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2009 SAS Institute Inc. All Rights Reserved.