24 TimeSeriesSet<double>::operator=(mp);
32 TimeSeriesSet<double>::operator=(mp);
46 for (
int j=0; j<maxnumpoints(); j++)
50 for (
int i=0; i<size(); i++)
55 for (
int j=0; j<at(i).size(); j++)
57 t_values.append(at(i).getTime(j));
58 C_values.append(at(i).getValue(j));
63 out[QString::fromStdString(getSeriesName(i))] =
timeseries;
65 QJsonArray Jobserved_values;
68 out[
"Observed Values"] = Jobserved_values;
75 for (QString key: jsonobject.keys())
77 if (key==
"Observed Values")
79 QJsonArray observed_value_JArray = jsonobject[key].toArray();
80 for (
int i=0; i<observed_value_JArray.count(); i++)
83 else if (key==
"labels")
85 QJsonArray labels_JArray = jsonobject[key].toArray();
86 for (
int i=0; i<labels_JArray.count(); i++)
87 labels.push_back(labels_JArray[i].toString().toStdString());
91 QString SeriesName = key;
92 QJsonArray TimeJArray = jsonobject[key].toObject()[
"time"].toArray();
93 QJsonArray ValueJArray = jsonobject[key].toObject()[
"value"].toArray();
94 TimeSeries<double> this_series;
95 for (
unsigned int i=0; i<TimeJArray.count(); i++)
96 this_series.append(TimeJArray[i].toDouble(), ValueJArray[i].toDouble());
97 append(this_series,SeriesName.toStdString());
109 for (
unsigned int i=0; i<size(); i++)
110 out +=
"\t" + getSeriesName(i);
112 for (
int j=0; j<maxnumpoints(); j++)
114 for (
int i=0; i<size(); i++)
120 out+=
Label(j,i) +
"," + QString::number(at(i).getValue(j)).toStdString();
133 file->write(QString::fromStdString(
ToString()).toUtf8());
140 TimeSeries<double> last_contribution;
141 for (
int j=0; j<maxnumpoints(); j++)
144 for (
int i=0; i<colnumber; i++)
146 sum+=at(i).getValue(j);
150 cout<<
"Negative contribution!";
152 last_contribution.append(j,1.0-sum);
154 for (
int i = 0; i<colnumber; i++)
156 out.append(at(i),getSeriesName(i));
158 out.append(last_contribution,
name);
159 for (
int i=colnumber; i<size(); i++)
161 out.append(at(i),getSeriesName(i));
169 QTableWidget *tablewidget =
new QTableWidget();
170 tablewidget->setEditTriggers(QAbstractItemView::NoEditTriggers);
173 tablewidget->setColumnCount(size());
177 tablewidget->setColumnCount(size()*2);
179 tablewidget->setRowCount(maxnumpoints());
181 QStringList rowlabels;
183 for (
int j=0; j<size(); j++)
189 for (
int i=0; i<at(j).size(); i++)
192 {
if (j==0) rowlabels<<QString::number(i);
193 tablewidget->setItem(i,j*2,
new QTableWidgetItem(QString::fromStdString(
Label(i,j))));
194 tablewidget->setItem(i,j*2+1,
new QTableWidgetItem(QString::number(at(j).getValue(i))));
197 {
if (j==0) rowlabels<<QString::fromStdString(
Label(i,j));
198 tablewidget->setItem(i,j,
new QTableWidgetItem(QString::number(at(j).getValue(i))));
203 tablewidget->setHorizontalHeaderLabels(headers);
204 tablewidget->setVerticalHeaderLabels(rowlabels);
Collection of time series with labels and observed values.
CMBTimeSeriesSet & operator=(const CMBTimeSeriesSet &mp)
Assignment operator from CMBTimeSeriesSet.
CMBTimeSeriesSet()
Default constructor - creates an empty time series set.
bool writetofile(QFile *) override
Writes time series set to file.
vector< string > labels
Custom labels for time points.
bool ReadFromJsonObject(const QJsonObject &jsonobject) override
Deserializes time series set from JSON format.
vector< double > observed_value
Observed values for comparison with modeled series.
QJsonObject toJsonObject() const override
Serializes time series set to JSON format.
string Label(unsigned int i) const
Gets label for time point (uses custom labels if set)
void AppendLastContribution(int colnumber, const string &name)
Appends a final contribution series calculated from existing series.
QTableWidget * ToTable() override
Creates a QTableWidget for displaying time series set data.
string ToString() const override
Converts time series set to CSV-formatted string.
Abstract base class providing common serialization and visualization interface.
options & GetOptions()
Get reference to the options structure.
bool Option(options_key opt)
Get the current value of a configuration option.
@ single_column_x
Enable single-column mode for X-axis data representation.
QString X_suffix
Suffix appended to X-axis field names in serialization.
QString Y_suffix
Suffix appended to Y-axis field names in serialization.