com.sas.graphics.components.piechart
Class PieChartTableDataModel

com.sas.graphics.components.piechart.PieChartTableDataModel

public class PieChartTableDataModel

A PieChartTableDataModel encapsulates relational data from a javax.swing.table.TableModel and maps the TableModel's data columns onto a PieChart component. To do the mapping, it assigns variable roles to the data columns that will be used in the graph, and the assigned roles determine how the PieChart displays the data.

By default when generating a graph, a PieChart summarizes the data from a PieChartTableDataModel.

Topics:
Basic Charts
Data Summarization and Statistic Calculation
Numeric Categorizations
Data Subgroups
Multiple Response Variables
Multiple Charts in Columns and/or Rows
Valid Variable Roles for a PieChartTableDataModel
Behavior
Events
Error Handling
Samples:
Swing-based Samples
Servlet-based Samples

Since:
SAS 9.1
See Also:
PieChartTableDataModel

Constructor Summary
PieChartTableDataModel()
          Default Constructor
PieChartTableDataModel(javax.swing.table.TableModel newModel)
          Constructor with assigned model
 
Method Summary
 void apply(PieChartTableDataModel theOtherModel)
          Utility method to convey properties contained in "theOtherObject" to this object.
 boolean equals(java.lang.Object obj)
          Determines whether another object is equal to this PieChartTableDataModel.
 Variable[] getAuxiliaryVariable()
          Returns the array of data columns that was most recently set by the setAuxiliaryVariable() method.
 ClassificationVariable getCategoryVariable()
          Returns the data column that was most recently set in the Category role by the setCategoryVariable() method.
 ClassificationVariable getColumnVariable()
          Returns the data column that was most recently set in the Column role by the setColumnVariable() method.
 Variable[] getDataTipVariable()
          Returns the array of data columns that was most recently set by the setDataTipVariable() method.
 javax.swing.table.TableModel getModel()
          Return the data table associated with this model.
 AnalysisVariable getResponseVariable()
          Returns the data column that was most recently set in the Response role by the setResponseVariable() method.
 ClassificationVariable getRowVariable()
          Returns the data column that was most recently set in the Row role by the setRowVariable() method.
 javax.swing.ListSelectionModel getSelectionModel()
          Returns the ListSelectionModel that indicates which data values are selected.
 ClassificationVariable getSubgroupVariable()
          Returns the data column that was most recently set in the Subgroup role by the setSubgroupVariable() method.
 int hashCode()
          Computes the hash code for this PieChartTableDataModel.
 boolean isStatisticEnabled()
          Returns whether or not to summarize the data.
 void setAuxiliaryVariable(Variable[] newVariables)
          Specifies an array of Variables that are included among the variables that are passed in the events on the PieChart data elements.
 void setCategoryVariable(ClassificationVariable newVariable)
          Specifies the data column(s) in the attached TableModel whose values are to be used to produce the slices to be displayed in the pie charts.
 void setColumnVariable(ClassificationVariable newVariable)
          Specifies the data column(s) in the attached TableModel whose values are used to horizontally group the charts.
 void setDataTipVariable(Variable[] newVariables)
          Specifies an array of Variables to be displayed in the data tip.
 void setModel(javax.swing.table.TableModel newModel)
          Assign the data table to the model.
 void setResponseVariable(AnalysisVariable newVariable)
          Specifies the data column(s) in the attached TableModel whose values are to be used to determine the extent of the angles of the pie slices.
 void setRowVariable(ClassificationVariable newVariable)
          Specifies the data column(s) in the attached TableModel whose values are used to vertically group the charts.
 void setSelectionModel(javax.swing.ListSelectionModel newModel)
          Sets the ListSelectionModel which indicates which data values are selected.
 void setStatisticEnabled(boolean newStatisticEnabled)
          Sets whether or not to summarize the data.
 void setSubgroupVariable(ClassificationVariable newVariable)
          Specifies the data column(s) in the attached TableModel whose values are to be used to produce the concentric rings of the pie charts.
 
Methods inherited from class com.sas.graphics.components.DataModel
apply, getLocale, getRulesContext, getSortStrategy, setLocale, setRulesContext, setSortStrategy
 
Methods inherited from class com.sas.graphics.components.ModelBase
addPropertyChangeListener, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, removePropertyChangeListener, setContainedModel
 

Constructor Detail

PieChartTableDataModel

public PieChartTableDataModel()
Default Constructor


PieChartTableDataModel

public PieChartTableDataModel(javax.swing.table.TableModel newModel)
Constructor with assigned model

Method Detail

setSelectionModel

public void setSelectionModel(javax.swing.ListSelectionModel newModel)
Sets the ListSelectionModel which indicates which data values are selected.

Parameters:
newModel - the ListSelectionModel containing the indicies of the selected data values.
Throws:
java.lang.IllegalArgumentException - if newModel is null.
See Also:
getSelectionModel()

getSelectionModel

public javax.swing.ListSelectionModel getSelectionModel()
Returns the ListSelectionModel that indicates which data values are selected.

Returns:
the ListSelectionModel containing the indicies of the selected data values.
See Also:
setSelectionModel(javax.swing.ListSelectionModel)

apply

public void apply(PieChartTableDataModel theOtherModel)
Utility method to convey properties contained in "theOtherObject" 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.


setModel

public void setModel(javax.swing.table.TableModel newModel)
Assign the data table to the model.

See Also:
getModel()

getModel

public javax.swing.table.TableModel getModel()
Return the data table associated with this model.

Returns:
table model associated with this data model
See Also:
setModel(javax.swing.table.TableModel)

setStatisticEnabled

public void setStatisticEnabled(boolean newStatisticEnabled)
Sets whether or not to summarize the data. The default is true meaning to summarize the data. The only time that this should be set to false is when the Swing TableModel contains summarized data and all the clasification variables have been properly assigned.

Parameters:
newStatisticEnabled - whether or not to summarize the data
See Also:
isStatisticEnabled()

isStatisticEnabled

public boolean isStatisticEnabled()
Returns whether or not to summarize the data.

See Also:
setStatisticEnabled(boolean)

getColumnVariable

public ClassificationVariable getColumnVariable()
Returns the data column that was most recently set in the Column role by the setColumnVariable() method. Returns null if the variable role has not been set.

Returns:
classification variable for column
See Also:
setColumnVariable(com.sas.graphics.components.ClassificationVariable)

getRowVariable

public ClassificationVariable getRowVariable()
Returns the data column that was most recently set in the Row role by the setRowVariable() method. Returns null if the variable role has not been set.

Returns:
classification variable for row
See Also:
setRowVariable(com.sas.graphics.components.ClassificationVariable)

getCategoryVariable

public ClassificationVariable getCategoryVariable()
Returns the data column that was most recently set in the Category role by the setCategoryVariable() method. Returns null if the variable role has not been set.

Returns:
classification variable for category
See Also:
setCategoryVariable(com.sas.graphics.components.ClassificationVariable)

getSubgroupVariable

public ClassificationVariable getSubgroupVariable()
Returns the data column that was most recently set in the Subgroup role by the setSubgroupVariable() method. Returns null if the variable role has not been set.

Returns:
classification variable for subgroup
See Also:
setSubgroupVariable(com.sas.graphics.components.ClassificationVariable)

getResponseVariable

public AnalysisVariable getResponseVariable()
Returns the data column that was most recently set in the Response role by the setResponseVariable() method. Returns null if the variable role has not been set.

Returns:
classification variable for response
See Also:
setResponseVariable(com.sas.graphics.components.AnalysisVariable)

setColumnVariable

public void setColumnVariable(ClassificationVariable newVariable)
Specifies the data column(s) in the attached TableModel whose values are used to horizontally group the charts.

See Also:
getColumnVariable()

setRowVariable

public void setRowVariable(ClassificationVariable newVariable)
Specifies the data column(s) in the attached TableModel whose values are used to vertically group the charts.

See Also:
getRowVariable()

setCategoryVariable

public void setCategoryVariable(ClassificationVariable newVariable)
Specifies the data column(s) in the attached TableModel whose values are to be used to produce the slices to be displayed in the pie charts.

See Also:
getCategoryVariable()

setSubgroupVariable

public void setSubgroupVariable(ClassificationVariable newVariable)
Specifies the data column(s) in the attached TableModel whose values are to be used to produce the concentric rings of the pie charts.

See Also:
getSubgroupVariable()

setResponseVariable

public void setResponseVariable(AnalysisVariable newVariable)
Specifies the data column(s) in the attached TableModel whose values are to be used to determine the extent of the angles of the pie slices.

See Also:
getResponseVariable()

setDataTipVariable

public void setDataTipVariable(Variable[] newVariables)
Specifies an array of Variables to be displayed in the data tip. By default, the variables specified on setDataTipVariable() are appended to the end of the default data tip display. To replace the default display with the list of variables in the Variable[] array, use the GraphModel to get the DataTipModel , and the call the DataTipModel's setContent() method with the value GraphConstants.DATA_TIP_REPLACE.

The following code fragment specifies two variables for the data tip display and uses them to replace the default data tip display:


 // Create an array of variables to set in the data tip display
    Variable dataTipVars[] = new Variable[2];
      dataTipVars[0] = new Variable("Task");
      dataTipVars[1] = new Variable("Duration");
    pieChart.getGraphModel().getDataTipModel().setContent(GraphConstants.DATA_TIP_REPLACE);
 

Parameters:
newVariables - array of Variables to display in data tip
Throws:
java.lang.IllegalArgumentException - if a non-null array of zero length is passed in.
See Also:
getDataTipVariable(), setAuxiliaryVariable(com.sas.graphics.components.Variable[])

getDataTipVariable

public Variable[] getDataTipVariable()
Returns the array of data columns that was most recently set by the setDataTipVariable() method. Returns null if the data tip variables were not set.

Returns:
variables for data tip values
See Also:
setDataTipVariable(com.sas.graphics.components.Variable[])

setAuxiliaryVariable

public void setAuxiliaryVariable(Variable[] newVariables)
Specifies an array of Variables that are included among the variables that are passed in the events on the PieChart data elements. Auxiliary variables are not represented in the chart. By default, they are not displayed in the datatip, although they can be included in the array of variables set by setDataTipVariable().

Parameters:
newVariables - contains Variables for GraphActionEvent return.
Throws:
java.lang.IllegalArgumentException - if a non-null array of zero length is passed in.
See Also:
getAuxiliaryVariable(), setDataTipVariable(com.sas.graphics.components.Variable[])

getAuxiliaryVariable

public Variable[] getAuxiliaryVariable()
Returns the array of data columns that was most recently set by the setAuxiliaryVariable() method. Returns null if the auxiliary variables were not set.

Returns:
variables for Auxiliary values
See Also:
setAuxiliaryVariable(com.sas.graphics.components.Variable[]), setDataTipVariable(com.sas.graphics.components.Variable[])

equals

public boolean equals(java.lang.Object obj)
Determines whether another object is equal to this PieChartTableDataModel.

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

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

hashCode

public int hashCode()
Computes the hash code for this PieChartTableDataModel.

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



Copyright © 2009 SAS Institute Inc. All Rights Reserved.