| 
    QGIS API Documentation
    3.12.1-BucureČ™ti (121cc00ff0)
    
   | 
 
QgsClassificationMethod is an abstract class for implementations of classification methods. More...
#include <qgsclassificationmethod.h>

Public Types | |
| enum | ClassPosition { LowerBound, Inner, UpperBound } | 
| Defines the class position.  More... | |
| enum | MethodProperty { NoFlag = 0, ValuesNotRequired = 1 << 1, SymmetricModeAvailable = 1 << 2 } | 
| Flags for the classification method.  More... | |
Public Member Functions | |
| QgsClassificationMethod (MethodProperties properties=NoFlag, int codeComplexity=1) | |
| Creates a classification method.  More... | |
| virtual | ~QgsClassificationMethod () | 
| QList< QgsClassificationRange > | classes (const QgsVectorLayer *layer, const QString &expression, int nclasses) | 
| This will calculate the classes for a given layer to define the classes.  More... | |
| QList< QgsClassificationRange > | classes (const QList< double > &values, int nclasses) | 
| This will calculate the classes for a list of values.  More... | |
| QList< QgsClassificationRange > | classes (double minimum, double maximum, int nclasses) | 
| This will calculate the classes for defined bounds without any values.  More... | |
| virtual QgsClassificationMethod * | clone () const =0 | 
| Returns a clone of the method.  More... | |
| int | codeComplexity () const | 
| Code complexity as the exponent in Big O notation.  More... | |
| virtual QIcon | icon () const | 
| The icon of the method.  More... | |
| virtual QString | id () const =0 | 
| The id of the method as saved in the project, must be unique in registry.  More... | |
| QString | labelFormat () const | 
| Returns the format of the label for the classes.  More... | |
| virtual QString | labelForRange (double lowerValue, double upperValue, ClassPosition position=Inner) const | 
| Returns the label for a range.  More... | |
| QString | labelForRange (const QgsRendererRange &range, ClassPosition position=Inner) const | 
| Returns the label for a range.  More... | |
| int | labelPrecision () const | 
| Returns the precision for the formatting of the labels.  More... | |
| bool | labelTrimTrailingZeroes () const | 
| Returns if the trailing 0 are trimmed in the label.  More... | |
| virtual QString | name () const =0 | 
| The readable and translate name of the method.  More... | |
| const QgsProcessingParameterDefinition * | parameterDefinition (const QString ¶meterName) const | 
| Returns the parameter from its name.  More... | |
| QgsProcessingParameterDefinitions | parameterDefinitions () const | 
| Returns the list of parameters.  More... | |
| QVariantMap | parameterValues () const | 
| Returns the values of the processing parameters.  More... | |
| virtual void | readXml (const QDomElement &element, const QgsReadWriteContext &context) | 
| Reads extra information to apply it to the method.  More... | |
| QDomElement | save (QDomDocument &doc, const QgsReadWriteContext &context) const | 
| Saves the method to a DOM element and return it.  More... | |
| void | setLabelFormat (const QString &format) | 
| Defines the format of the labels for the classes, using %1 and %2 for the bounds.  More... | |
| void | setLabelPrecision (int labelPrecision) | 
| Defines the precision for the formatting of the labels.  More... | |
| void | setLabelTrimTrailingZeroes (bool trimTrailingZeroes) | 
| Defines if the trailing 0 are trimmed in the label.  More... | |
| void | setParameterValues (const QVariantMap &values) | 
| Defines the values of the additional parameters.  More... | |
| void | setSymmetricMode (bool enabled, double symmetryPoint=0, bool symmetryAstride=false) | 
| Defines if the symmetric mode is enables and configures its parameters.  More... | |
| bool | symmetricModeAvailable () const | 
| Returns if the method supports symmetric calculation.  More... | |
| bool | symmetricModeEnabled () const | 
| Returns if the symmetric mode is enabled.  More... | |
| bool | symmetryAstride () const | 
Returns if the symmetric mode is astride if true, it will remove the symmetry point break so that the 2 classes form only one.  More... | |
| double | symmetryPoint () const | 
| Returns the symmetry point for symmetric mode.  More... | |
| virtual bool | valuesRequired () const | 
| Returns if the method requires values to calculate the classes If not, bounds are sufficient.  More... | |
| virtual void | writeXml (QDomElement &element, const QgsReadWriteContext &context) const | 
| Writes extra information about the method.  More... | |
Static Public Member Functions | |
| static QgsClassificationMethod * | create (const QDomElement &element, const QgsReadWriteContext &context) | 
| Reads the DOM element and return a new classification method from it.  More... | |
| static void | makeBreaksSymmetric (QList< double > &breaks, double symmetryPoint, bool astride) | 
| Remove the breaks that are above the existing opposite sign classes to keep colors symmetrically balanced around symmetryPoint Does not put a break on the symmetryPoint.  More... | |
| static QList< double > | rangesToBreaks (const QList< QgsClassificationRange > &classes) | 
| Transforms a list of classes to a list of breaks.  More... | |
Static Public Attributes | |
| static const int | MAX_PRECISION = 15 | 
| static const int | MIN_PRECISION = -6 | 
Protected Member Functions | |
| void | addParameter (QgsProcessingParameterDefinition *definition) | 
| Add a parameter to the method.  More... | |
| void | copyBase (QgsClassificationMethod *c) const | 
| Copy the parameters (shall be used in clone implementation)  More... | |
| QString | formatNumber (double value) const | 
| Format the number according to label properties.  More... | |
QgsClassificationMethod is an abstract class for implementations of classification methods.
Definition at line 87 of file qgsclassificationmethod.h.
Defines the class position.
| Enumerator | |
|---|---|
| LowerBound | The class is at the lower bound.  | 
| Inner | The class is not at a bound.  | 
| UpperBound | The class is at the upper bound.  | 
Definition at line 120 of file qgsclassificationmethod.h.
Flags for the classification method.
| Enumerator | |
|---|---|
| NoFlag | No flag.  | 
| ValuesNotRequired | Deprecated since QGIS 3.12.  | 
| SymmetricModeAvailable | This allows using symmetric classification.  | 
Definition at line 110 of file qgsclassificationmethod.h.
      
  | 
  explicit | 
Creates a classification method.
| properties | The properties of the implemented method | 
| codeComplexity | as the exponent in the big O notation | 
Definition at line 40 of file qgsclassificationmethod.cpp.
      
  | 
  virtual | 
Definition at line 47 of file qgsclassificationmethod.cpp.
      
  | 
  protected | 
Add a parameter to the method.
The paramaeter is a processing parameter which will allow its configuration in the GUI.
Definition at line 181 of file qgsclassificationmethod.cpp.
| QList< QgsClassificationRange > QgsClassificationMethod::classes | ( | const QgsVectorLayer * | layer, | 
| const QString & | expression, | ||
| int | nclasses | ||
| ) | 
This will calculate the classes for a given layer to define the classes.
| layer | The vector layer | 
| expression | The name of the field on which the classes are calculated | 
| nclasses | The number of classes to be returned | 
Definition at line 209 of file qgsclassificationmethod.cpp.
| QList< QgsClassificationRange > QgsClassificationMethod::classes | ( | const QList< double > & | values, | 
| int | nclasses | ||
| ) | 
This will calculate the classes for a list of values.
| values | The list of values | 
| nclasses | The number of classes to be returned | 
Definition at line 248 of file qgsclassificationmethod.cpp.
| QList< QgsClassificationRange > QgsClassificationMethod::classes | ( | double | minimum, | 
| double | maximum, | ||
| int | nclasses | ||
| ) | 
This will calculate the classes for defined bounds without any values.
| minimum | The minimum value for the breaks | 
| maximum | The maximum value for the breaks | 
| nclasses | The number of classes to be returned | 
Definition at line 261 of file qgsclassificationmethod.cpp.
      
  | 
  pure virtual | 
Returns a clone of the method.
Implementation can take advantage of copyBase method which copies the parameters of the base class
Implemented in QgsClassificationLogarithmic, QgsClassificationQuantile, QgsClassificationEqualInterval, QgsClassificationJenks, QgsClassificationPrettyBreaks, QgsClassificationStandardDeviation, and QgsClassificationCustom.
      
  | 
  inline | 
Code complexity as the exponent in Big O notation.
Definition at line 173 of file qgsclassificationmethod.h.
      
  | 
  protected | 
Copy the parameters (shall be used in clone implementation)
Definition at line 52 of file qgsclassificationmethod.cpp.
      
  | 
  static | 
Reads the DOM element and return a new classification method from it.
| element | the DOM element | 
| context | the read/write context | 
Definition at line 61 of file qgsclassificationmethod.cpp.
      
  | 
  protected | 
Format the number according to label properties.
Definition at line 157 of file qgsclassificationmethod.cpp.
      
  | 
  inlinevirtual | 
The icon of the method.
Reimplemented in QgsClassificationLogarithmic, QgsClassificationQuantile, QgsClassificationEqualInterval, QgsClassificationJenks, QgsClassificationPrettyBreaks, and QgsClassificationStandardDeviation.
Definition at line 149 of file qgsclassificationmethod.h.
      
  | 
  pure virtual | 
The id of the method as saved in the project, must be unique in registry.
Implemented in QgsClassificationLogarithmic, QgsClassificationCustom, QgsClassificationQuantile, QgsClassificationEqualInterval, QgsClassificationJenks, QgsClassificationPrettyBreaks, and QgsClassificationStandardDeviation.
      
  | 
  inline | 
Returns the format of the label for the classes.
Definition at line 207 of file qgsclassificationmethod.h.
      
  | 
  virtual | 
Returns the label for a range.
Reimplemented in QgsClassificationLogarithmic, and QgsClassificationStandardDeviation.
Definition at line 336 of file qgsclassificationmethod.cpp.
| QString QgsClassificationMethod::labelForRange | ( | const QgsRendererRange & | range, | 
| QgsClassificationMethod::ClassPosition | position = Inner  | 
        ||
| ) | const | 
Returns the label for a range.
Definition at line 331 of file qgsclassificationmethod.cpp.
      
  | 
  inline | 
Returns the precision for the formatting of the labels.
Definition at line 211 of file qgsclassificationmethod.h.
      
  | 
  inline | 
Returns if the trailing 0 are trimmed in the label.
Definition at line 215 of file qgsclassificationmethod.h.
      
  | 
  static | 
Remove the breaks that are above the existing opposite sign classes to keep colors symmetrically balanced around symmetryPoint Does not put a break on the symmetryPoint.
This is done before.
| breaks | The breaks of an already-done classification | 
| symmetryPoint | The point around which we want a symmetry | 
| astride | A bool indicating if the symmetry is made astride the symmetryPoint or not ( [-1,1] vs. [-1,0][0,1] ) | 
Definition at line 298 of file qgsclassificationmethod.cpp.
      
  | 
  pure virtual | 
The readable and translate name of the method.
Implemented in QgsClassificationLogarithmic, QgsClassificationCustom, QgsClassificationQuantile, QgsClassificationEqualInterval, QgsClassificationJenks, QgsClassificationPrettyBreaks, and QgsClassificationStandardDeviation.
| const QgsProcessingParameterDefinition * QgsClassificationMethod::parameterDefinition | ( | const QString & | parameterName | ) | const | 
Returns the parameter from its name.
Definition at line 186 of file qgsclassificationmethod.cpp.
      
  | 
  inline | 
Returns the list of parameters.
Definition at line 284 of file qgsclassificationmethod.h.
      
  | 
  inline | 
Returns the values of the processing parameters.
One could use QgsProcessingParameters::parameterAsXxxx to retrieve the actual value of a parameter.
Definition at line 297 of file qgsclassificationmethod.h.
      
  | 
  static | 
Transforms a list of classes to a list of breaks.
Definition at line 31 of file qgsclassificationmethod.cpp.
      
  | 
  inlinevirtual | 
Reads extra information to apply it to the method.
Reimplemented in QgsClassificationStandardDeviation.
Definition at line 160 of file qgsclassificationmethod.h.
| QDomElement QgsClassificationMethod::save | ( | QDomDocument & | doc, | 
| const QgsReadWriteContext & | context | ||
| ) | const | 
Saves the method to a DOM element and return it.
| doc | the DOM document | 
| context | the read/write context | 
Definition at line 101 of file qgsclassificationmethod.cpp.
      
  | 
  inline | 
Defines the format of the labels for the classes, using %1 and %2 for the bounds.
Definition at line 209 of file qgsclassificationmethod.h.
| void QgsClassificationMethod::setLabelPrecision | ( | int | labelPrecision | ) | 
Defines the precision for the formatting of the labels.
Definition at line 142 of file qgsclassificationmethod.cpp.
      
  | 
  inline | 
Defines if the trailing 0 are trimmed in the label.
Definition at line 217 of file qgsclassificationmethod.h.
| void QgsClassificationMethod::setParameterValues | ( | const QVariantMap & | values | ) | 
Defines the values of the additional parameters.
Definition at line 197 of file qgsclassificationmethod.cpp.
| void QgsClassificationMethod::setSymmetricMode | ( | bool | enabled, | 
| double | symmetryPoint = 0,  | 
        ||
| bool | symmetryAstride = false  | 
        ||
| ) | 
Defines if the symmetric mode is enables and configures its parameters.
If the symmetric mode is not available in the current implementation, calling this method has no effect.
| enabled | if the symmetric mode is enabled | 
| symmetryPoint | the value of the symmetry point | 
| symmetryAstride | if true, it will remove the symmetry point break so that the 2 classes form only one  | 
Definition at line 135 of file qgsclassificationmethod.cpp.
      
  | 
  inline | 
Returns if the method supports symmetric calculation.
Definition at line 178 of file qgsclassificationmethod.h.
      
  | 
  inline | 
Returns if the symmetric mode is enabled.
Definition at line 183 of file qgsclassificationmethod.h.
      
  | 
  inline | 
Returns if the symmetric mode is astride if true, it will remove the symmetry point break so that the 2 classes form only one. 
Definition at line 194 of file qgsclassificationmethod.h.
      
  | 
  inline | 
Returns the symmetry point for symmetric mode.
Definition at line 188 of file qgsclassificationmethod.h.
      
  | 
  inlinevirtual | 
Returns if the method requires values to calculate the classes If not, bounds are sufficient.
Reimplemented in QgsClassificationLogarithmic, QgsClassificationEqualInterval, QgsClassificationPrettyBreaks, and QgsClassificationCustom.
Definition at line 166 of file qgsclassificationmethod.h.
      
  | 
  inlinevirtual | 
Writes extra information about the method.
Reimplemented in QgsClassificationStandardDeviation.
Definition at line 158 of file qgsclassificationmethod.h.
      
  | 
  static | 
Definition at line 299 of file qgsclassificationmethod.h.
      
  | 
  static | 
Definition at line 300 of file qgsclassificationmethod.h.
 1.8.13