QGIS API Documentation 3.43.0-Master (b60ef06885e)
qgsclassificationstandarddeviation.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsclassificationstandarddeviation.h
3 ---------------------
4 begin : September 2019
5 copyright : (C) 2019 by Denis Rouzaud
6 email : denis@opengis.ch
7 ***************************************************************************
8 * *
9 * This program is free software; you can redistribute it and/or modify *
10 * it under the terms of the GNU General Public License as published by *
11 * the Free Software Foundation; either version 2 of the License, or *
12 * (at your option) any later version. *
13 * *
14 ***************************************************************************/
15
16#ifndef QGSCLASSIFICATIONSTANDARDDEVIATION_H
17#define QGSCLASSIFICATIONSTANDARDDEVIATION_H
18
19#include "qgis_core.h"
21
28{
29 public:
31
32 QString name() const override;
33 QString id() const override;
34 std::unique_ptr< QgsClassificationMethod > clone() const override;
35 QIcon icon() const override;
36 QString labelForRange( double lowerValue, double upperValue, ClassPosition position ) const override;
37 void writeXml( QDomElement &element, const QgsReadWriteContext &context ) const override;
38 void readXml( const QDomElement &element, const QgsReadWriteContext &context ) override;
39
40 static const QString METHOD_ID;
41
42 private:
43 QList<double> calculateBreaks( double &minimum, double &maximum,
44 const QList<double> &values, int nclasses, QString &error ) override;
45
46 QString valueToLabel( double value ) const override;
47
48 double mStdDev = 1.0;
49 double mEffectiveSymmetryPoint = 0.0;
50};
51
52#endif // QGSCLASSIFICATIONSTANDARDDEVIATION_H
An abstract class for implementations of classification methods.
virtual QString id() const =0
The id of the method as saved in the project, must be unique in registry.
virtual std::unique_ptr< QgsClassificationMethod > clone() const =0
Returns a clone of the method.
ClassPosition
Defines the class position.
virtual void readXml(const QDomElement &element, const QgsReadWriteContext &context)
Reads extra information to apply it to the method.
virtual void writeXml(QDomElement &element, const QgsReadWriteContext &context) const
Writes extra information about the method.
virtual QString name() const =0
The readable and translate name of the method.
virtual QIcon icon() const
The icon of the method.
virtual QString labelForRange(double lowerValue, double upperValue, ClassPosition position=Inner) const
Returns the label for a range.
A classification method which classifies based on standard deviation of values.
A container for the context for various read/write operations on objects.