-
Notifications
You must be signed in to change notification settings - Fork 0
/
wykres.cpp
53 lines (43 loc) · 1.35 KB
/
wykres.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include "wykres.h"
#include "dane.h"
#include <qwt_plot_curve.h>
#include <qwt_legend_item.h>
#include <qwt_legend.h>
#include <qwt_plot_marker.h>
wykres::wykres(): QwtPlot() {
setTitle("Wyniki symulacji");
resize(600,400);
}
void wykres::ustaw_czas(int t) {
this->detachItems();
time.clear();
for (int i=0; i<t; ++i) time.append(i);
}
void wykres::dodaj_naj(double d) {
QwtPlotMarker *mY = new QwtPlotMarker();
mY->setLabel(QString::fromLatin1("Osobnik najlepszy = ")+QString::number(-d));
mY->setLabelAlignment(Qt::AlignRight|Qt::AlignTop);
mY->setLineStyle(QwtPlotMarker::HLine);
mY->setYValue(-d);
mY->attach(this);
}
void wykres::dodaj(QVector<double> min,QVector<double> max,QVector<double> sr,QVector<double> odch ) {
cmin = new QwtPlotCurve("Minimum");
cmax = new QwtPlotCurve("Maximum");
csr = new QwtPlotCurve("Srednia");
codch = new QwtPlotCurve("Odchylenie");
cmin->setSamples(time,min);
cmin->setPen(QPen(Qt::red));
cmax->setSamples(time,max);
cmax->setPen(QPen(Qt::blue));
csr->setSamples(time,sr);
csr->setPen(QPen(Qt::green));
codch->setSamples(time,odch);
codch->setPen(QPen(Qt::magenta));
insertLegend(new QwtLegend(), QwtPlot::RightLegend);
cmin->attach(this);
cmax->attach(this);
csr->attach(this);
codch->attach(this);
replot();
}