26 #ifndef QCP_PLOTTABLE_STATISTICALBOX_H
27 #define QCP_PLOTTABLE_STATISTICALBOX_H
29 #include "../global.h"
31 #include "../plottable.h"
32 #include "../painter.h"
41 Q_PROPERTY(
double key READ key WRITE setKey)
42 Q_PROPERTY(
double minimum READ minimum WRITE setMinimum)
43 Q_PROPERTY(
double lowerQuartile READ lowerQuartile WRITE setLowerQuartile)
44 Q_PROPERTY(
double median READ median WRITE setMedian)
45 Q_PROPERTY(
double upperQuartile READ upperQuartile WRITE setUpperQuartile)
46 Q_PROPERTY(
double maximum READ maximum WRITE setMaximum)
47 Q_PROPERTY(QVector<double> outliers READ outliers WRITE setOutliers)
48 Q_PROPERTY(
double width READ width WRITE setWidth)
49 Q_PROPERTY(
double whiskerWidth READ whiskerWidth WRITE setWhiskerWidth)
50 Q_PROPERTY(QPen whiskerPen READ whiskerPen WRITE setWhiskerPen)
51 Q_PROPERTY(QPen whiskerBarPen READ whiskerBarPen WRITE setWhiskerBarPen)
52 Q_PROPERTY(QPen medianPen READ medianPen WRITE setMedianPen)
53 Q_PROPERTY(
QCPScatterStyle outlierStyle READ outlierStyle WRITE setOutlierStyle)
59 double key()
const {
return mKey; }
60 double minimum()
const {
return mMinimum; }
61 double lowerQuartile()
const {
return mLowerQuartile; }
62 double median()
const {
return mMedian; }
63 double upperQuartile()
const {
return mUpperQuartile; }
64 double maximum()
const {
return mMaximum; }
65 QVector<double> outliers()
const {
return mOutliers; }
66 double width()
const {
return mWidth; }
67 double whiskerWidth()
const {
return mWhiskerWidth; }
68 QPen whiskerPen()
const {
return mWhiskerPen; }
69 QPen whiskerBarPen()
const {
return mWhiskerBarPen; }
70 QPen medianPen()
const {
return mMedianPen; }
74 void setKey(
double key);
75 void setMinimum(
double value);
76 void setLowerQuartile(
double value);
77 void setMedian(
double value);
78 void setUpperQuartile(
double value);
79 void setMaximum(
double value);
80 void setOutliers(
const QVector<double> &values);
81 void setData(
double key,
double minimum,
double lowerQuartile,
double median,
double upperQuartile,
double maximum);
82 void setWidth(
double width);
83 void setWhiskerWidth(
double width);
84 void setWhiskerPen(
const QPen &pen);
85 void setWhiskerBarPen(
const QPen &pen);
86 void setMedianPen(
const QPen &pen);
91 virtual double selectTest(
const QPointF &pos,
bool onlySelectable, QVariant *details=0)
const;
95 QVector<double> mOutliers;
96 double mKey, mMinimum, mLowerQuartile, mMedian, mUpperQuartile, mMaximum;
99 QPen mWhiskerPen, mWhiskerBarPen, mMedianPen;
109 virtual void drawQuartileBox(
QCPPainter *painter, QRectF *quartileBox=0)
const;
110 virtual void drawMedian(
QCPPainter *painter)
const;
111 virtual void drawWhiskers(
QCPPainter *painter)
const;
112 virtual void drawOutliers(
QCPPainter *painter)
const;
118 #endif // QCP_PLOTTABLE_STATISTICALBOX_H