KDEPlot

A description for KDEPlot.

class KDEPlot : public Plot

This class implements the kernel density estimation plot - a visualization of the estimated probability density of one-dimensional numerical data.

The estimation can be performed based on one of the supported kernels types (

See also

nsl_kernel_type) and based on the different methods to define the bandwidth (

See also

nsl_kde_bandwidth_type). A rug plot to visualize the provided data points can be enabled additionally to the the visualization of the curve for the estimated dencity.

Public Functions

virtual QIcon icon() const override

Returns an icon to be used in the project explorer.

virtual void save(QXmlStreamWriter*) const override

Save as XML.

virtual bool load(XmlStreamReader*, bool preview) override

Load from XML.

virtual void recalc() override

recalculates the internal structures (additional data containers, drawing primitives, etc.) on data changes in the source data columns. these structures are used in the plot during the actual drawing of the plot on geometry changes.

virtual void setVisible(bool) override

Show/hide the element.

int gridPointsCount() const

returns the the number of equally spaced points at which the density is to be evaluated, which also corresponds to the number of data points in the xy-curve used internally.

virtual bool hasData() const override

returns true if a valid data column is set, returns false otherwise. Used in CartesianPlot to determine whether the curve needs to be taken into account when calculating the data ranges of the plot area.

virtual bool usingColumn(const AbstractColumn*, bool indirect) const override

returns true if the column is used internally in the plot for the visualisation, returns false otherwise. If indirect is true it returns true also if a depending curve uses that column

virtual void handleAspectUpdated(const QString &aspectPath, const AbstractAspect *element) override

handleAspectUpdated in some cases one aspect can depend on another, like a XYCurve on Column or InfoElement on XYCurve. This is a generic function called for all Elements when a new aspect will be added even it is not a child of the current element

Path is explicit specified, so it must not be recalculated every time when iterating over multiple WorksheetElements. The path is the same as aspect->path()

Parameters:

path