com.esri.arcgis.system
Interface IClassify

All Superinterfaces:
java.io.Serializable
All Known Implementing Classes:
DefinedInterval, EqualInterval, GeometricalInterval, IClassifyProxy, NaturalBreaks, Quantile, StandardDeviation

Deprecated. This interface uses C style arrays which are not supported in the ArcGIS API for Java. It is replaced by IClassifyGEN. You can use the GEN interface proxy's Object-constructor to cast an instance of this interface to its GEN equivalent. Any ArcGIS class that implements this interface also implements the GEN interface.

public interface IClassify
extends java.io.Serializable

Provides access to members that control the classification methods.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Description

Classify objects apply one of several methods to statistically subdivide a set of numeric values into classes.

The IClassify interface is implemented by all the data classification objects (DefinedInterval, EqualInterval, NaturalBreaks, Quantile, StandardDeviation); this is the interface used to pass in histogram data and then classify it into breaks. The ClassID and MethodName properties are used by user interface dialog boxes to identify the classification object and establish what the classification is called.

In general, to classify a dataset, use this interface together with IClassBreaksRenderer.  First, add data to the classification using  SetHistogramData.  Next, set the number of classes and generate breaks using Classify (typically use the same number of classes specified here for IClassBreaksRenderer.BreakCount). Then apply the classification to the renderer by cycling through ClassBreaks and setting each IClassBreaksRenderer.Break.

Remarks

Do not call IClassify.Classify for a StandardDeviation classification until you have set deviation properties using IDeviationInterval.

Instead of IClassify interface, implement IClassifyGEN interface that has been created to replace this one.


Method Summary
 void classify(int[] numClasses)
          Deprecated. Classifies data into the specified number of classes.
 java.lang.Object getClassBreaks()
          Deprecated. The array of class breaks (double).
 IUID getClassID()
          Deprecated. The CLSID for the classification object.
 java.lang.String getMethodName()
          Deprecated. The name of the classification method (based on choice of classification object).
 void setHistogramData(java.lang.Object doubleArrayValues, java.lang.Object longArrayFrequencies)
          Deprecated. Adds data in form of a histogram (array of values (doubles) and a paired array of frequencies (longs)) to the classification.
 

Method Detail

setHistogramData

public void setHistogramData(java.lang.Object doubleArrayValues,
                             java.lang.Object longArrayFrequencies)
                      throws java.io.IOException,
                             AutomationException
Deprecated. 
Adds data in form of a histogram (array of values (doubles) and a paired array of frequencies (longs)) to the classification.

Parameters:
doubleArrayValues - A Variant (in)
longArrayFrequencies - A Variant (in)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

classify

public void classify(int[] numClasses)
              throws java.io.IOException,
                     AutomationException
Deprecated. 
Classifies data into the specified number of classes.

Supported Platforms

Windows, Solaris, Linux

Description

Classify generates the ClassBreaks given the number of classes specified.  Use Classify only after you have added data to the classification using SetHistogramData.

Remarks

Having obtained the data values and frequencies using the SetHistogramData method, the next step is to compute some class breaks. Do this by calling the Classify method and specifying the number of classes you would like. You must supply the number of desired classes as a variable defined as a Long. Some classification algorithms will return a different number of class breaks to what you specified. The number of classes will be written back to the variable you supplied, so it is always best to recheck the number of class breaks after calling Classify.

Parameters:
numClasses - The numClasses (in/out: use single element array)
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getClassBreaks

public java.lang.Object getClassBreaks()
                                throws java.io.IOException,
                                       AutomationException
Deprecated. 
The array of class breaks (double). ClassBreaks(0) is the minimum value in the dataset, and subsequent breaks represent the upper limit of each class.

Supported Platforms

Windows, Solaris, Linux

Description

ClassBreaks returns an array of class breaks. The number of breaks may be different than what was specified in the Classify method, so it is essential that you check this before setting the BreakCount on IClassBreaksRenderer. The reason this may be different has to do with how a particular classification method handles skewness in the data being classified.

The first ClassBreak returned is the minimum value of the data being classified. The rest of the breaks are the upper bounds for each class.  The last break represents the upper bound of the highest class.

To properly assign ClassBreaks to an IClassBreaksRenderer:

1.  Set IClassBreaksRenderer.MinimumBreak = IClassify.ClassBreaks(0)
2.  Set IClassBreaksRenderer.Breaks(0) = IClassify.ClassBreaks(1)
3.  Set IClassBreaksRenderer.Breaks(1) = IClassify.ClassBreaks(2)
     etc.

Remarks

Note that the Breaks property array on the ClassBreaksRenderer has one less entry than the array returned from Classify. The first break value in the array returned from Classify is put into the ClassBreakRenderers’ MinimumBreak property. Next, copy the break values into the ClassBreaksRenderer object. You can set up the symbol property of the classes at the same time.

Returns:
A Variant
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMethodName

public java.lang.String getMethodName()
                               throws java.io.IOException,
                                      AutomationException
Deprecated. 
The name of the classification method (based on choice of classification object).

Supported Platforms

Windows, Solaris, Linux

Description

MethodName returns the classification method name (as it appears in the classification dialog).  Use to determine the CoClass currently implementing IClassify .

Returns:
The txt
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getClassID

public IUID getClassID()
                throws java.io.IOException,
                       AutomationException
Deprecated. 
The CLSID for the classification object.

Supported Platforms

Windows, Solaris, Linux

Description

Returns the GUID of the classification object.

Returns:
A reference to a com.esri.arcgis.system.IUID
Throws:
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.