| 296 | } |
| 297 | |
| 298 | void QmitkChartWidget::Impl::AddChartExampleData(const std::vector< std::pair<double, double> >& data2D, |
| 299 | const std::string& label, |
| 300 | const std::string& type, |
| 301 | const std::string& color, |
| 302 | const std::string& lineStyle, |
| 303 | const std::string& pieLabelsData) |
| 304 | { |
| 305 | auto definedLabels = GetDataLabels(m_C3xyData); |
| 306 | auto uniqueLabel = GetUniqueLabelName(definedLabels, label); |
| 307 | if (type == "scatter") |
| 308 | { |
| 309 | SetShowDataPoints(true); |
| 310 | MITK_INFO << "Enabling data points for all because of scatter plot"; |
| 311 | } |
| 312 | unsigned int sizeOfC3xyData = static_cast<unsigned int>(m_C3xyData.size()); |
| 313 | |
| 314 | std::unique_ptr<QmitkChartxyData> chartData = |
| 315 | std::make_unique<QmitkChartxyData>( |
| 316 | data2D, |
| 317 | QVariant(QString::fromStdString(uniqueLabel)), |
| 318 | QVariant(QString::fromStdString(type)), |
| 319 | QVariant(sizeOfC3xyData)); |
| 320 | |
| 321 | chartData->SetColor(QVariant(QString::fromStdString(color))); |
| 322 | chartData->SetLineStyle(QVariant(QString::fromStdString(lineStyle))); |
| 323 | |
| 324 | if (pieLabelsData != "") |
| 325 | { |
| 326 | std::string pieLabelsDataWorkingString = pieLabelsData; |
| 327 | |
| 328 | QList<QVariant> pieLabelsDataList; |
| 329 | while (pieLabelsDataWorkingString.size() != 0) |
| 330 | { |
| 331 | QVariant oneElement = QString::fromStdString(pieLabelsDataWorkingString.substr(0, pieLabelsDataWorkingString.find(";"))); |
| 332 | pieLabelsDataList.push_back(oneElement); |
| 333 | |
| 334 | if (pieLabelsDataWorkingString.find(";") != std::string::npos) |
| 335 | { |
| 336 | pieLabelsDataWorkingString.erase(0, pieLabelsDataWorkingString.find(";") + 1); |
| 337 | } |
| 338 | else |
| 339 | { |
| 340 | pieLabelsDataWorkingString.erase(pieLabelsDataWorkingString.begin(), pieLabelsDataWorkingString.end()); |
| 341 | } |
| 342 | } |
| 343 | |
| 344 | chartData->SetPieLabels(pieLabelsDataList); |
| 345 | } |
| 346 | |
| 347 | m_C3xyData.push_back(std::move(chartData)); |
| 348 | } |
| 349 | |
| 350 | void QmitkChartWidget::Impl::UpdateData1D(const std::vector<double> &data1D, const std::string &label) |
| 351 | { |