anpstudio 0.4.0
ANP Studio — Analytic Network Process desktop application
Loading...
Searching...
No Matches
sensitivity_chart_widget.hpp
Go to the documentation of this file.
1
6#pragma once
7
8#include <QWidget>
9#include <QString>
10#include <QVector>
11#include <utility>
12
16class SensitivityChartWidget : public QWidget {
17 Q_OBJECT
18public:
19 enum class Mode { Bars, Lines };
20
21 explicit SensitivityChartWidget(QWidget* parent = nullptr);
22
23 void setBarEntries(QVector<std::pair<QString, double>> entries);
24 void setLineSeries(QVector<QString> names,
25 QVector<double> xs,
26 QVector<QVector<double>> series);
27
28 [[nodiscard]] QSize minimumSizeHint() const override;
29 [[nodiscard]] QSize sizeHint() const override;
30
31protected:
32 void paintEvent(QPaintEvent* event) override;
33
34private:
35 Mode mode_ = Mode::Bars;
36 QVector<std::pair<QString, double>> bars_;
37 QVector<QString> lineNames_;
38 QVector<double> xs_;
39 QVector<QVector<double>> series_;
40};
Paints Interactive horizontal bars or Global multi-series line charts.
Definition sensitivity_chart_widget.hpp:16