File indexing completed on 2025-01-26 03:34:13
0001 /* 0002 File : QQPlotPrivate.h 0003 Project : LabPlot 0004 Description : Private members of QQPlot 0005 -------------------------------------------------------------------- 0006 SPDX-FileCopyrightText: 2023 Alexander Semke <alexander.semke@web.de> 0007 SPDX-License-Identifier: GPL-2.0-or-later 0008 */ 0009 0010 #ifndef QQPLOTPRIVATE_H 0011 #define QQPLOTPRIVATE_H 0012 0013 #include "backend/worksheet/plots/cartesian/PlotPrivate.h" 0014 0015 class Column; 0016 class Line; 0017 class QQPlot; 0018 0019 class QQPlotPrivate : public PlotPrivate { 0020 public: 0021 explicit QQPlotPrivate(QQPlot* owner); 0022 ~QQPlotPrivate() override; 0023 0024 void retransform() override; 0025 void recalc(); 0026 void updateDistribution(); 0027 void recalcShapeAndBoundingRect() override; 0028 0029 XYCurve* referenceCurve{nullptr}; 0030 Column* xReferenceColumn{nullptr}; 0031 QString xReferenceColumnPath; 0032 Column* yReferenceColumn{nullptr}; 0033 QString yReferenceColumnPath; 0034 0035 XYCurve* percentilesCurve{nullptr}; 0036 Column* xPercentilesColumn{nullptr}; 0037 QString xPercentilesColumnPath; 0038 Column* yPercentilesColumn{nullptr}; 0039 QString yPercentilesColumnPath; 0040 0041 // General 0042 const AbstractColumn* dataColumn{nullptr}; 0043 QString dataColumnPath; 0044 nsl_sf_stats_distribution distribution{nsl_sf_stats_gaussian}; 0045 0046 QQPlot* const q; 0047 0048 private: 0049 void copyValidData(QVector<double>&) const; 0050 }; 0051 0052 #endif