#3080 Ensemble statistics curves. Use different symbols on statistics curves

This commit is contained in:
Bjørn Erik Jensen 2018-06-27 11:24:07 +02:00
parent f0d7047438
commit 53a6694750
3 changed files with 25 additions and 3 deletions

View File

@ -416,6 +416,9 @@ void RimPlotCurve::updateCurveAppearance()
case SYMBOL_XCROSS:
style = QwtSymbol::XCross;
break;
case SYMBOL_DOWN_TRIANGLE:
style = QwtSymbol::DTriangle;
break;
default:
break;

View File

@ -53,7 +53,8 @@ public:
SYMBOL_DIAMOND,
SYMBOL_TRIANGLE,
SYMBOL_CROSS,
SYMBOL_XCROSS
SYMBOL_XCROSS,
SYMBOL_DOWN_TRIANGLE
};
enum CurveInterpolationEnum

View File

@ -68,6 +68,11 @@
//--------------------------------------------------------------------------------------------------
#define DOUBLE_INF std::numeric_limits<double>::infinity()
//--------------------------------------------------------------------------------------------------
/// Internal functions
//--------------------------------------------------------------------------------------------------
RimPlotCurve::PointSymbolEnum statisticsCurveSymbolFromAddress(const RifEclipseSummaryAddress& address);
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@ -990,8 +995,8 @@ void RimEnsembleCurveSet::updateStatisticsCurves(bool calculate = true)
m_curves.push_back(curve);
curve->setColor(m_statistics->color());
curve->setColor(m_statistics->color());
curve->setSymbol(RimPlotCurve::SYMBOL_ELLIPSE);
curve->setSymbolSkipDinstance(50);
curve->setSymbol(statisticsCurveSymbolFromAddress(address));
curve->setSymbolSkipDinstance(150);
curve->setSymbolLabel(RiaStatisticsTools::replacePercentileByPValueText(
QString::fromStdString(address.ensembleStatisticsQuantityName())));
curve->setLineStyle(RimPlotCurve::STYLE_SOLID);
@ -1216,3 +1221,16 @@ void RimEnsembleCurveSet::updateLegendMappingMode()
break;
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimPlotCurve::PointSymbolEnum statisticsCurveSymbolFromAddress(const RifEclipseSummaryAddress& address)
{
auto qName = QString::fromStdString(address.quantityName());
if (qName.contains(ENSEMBLE_STAT_P10_QUANTITY_NAME)) return RimPlotCurve::SYMBOL_TRIANGLE;
if (qName.contains(ENSEMBLE_STAT_P90_QUANTITY_NAME)) return RimPlotCurve::SYMBOL_DOWN_TRIANGLE;
if (qName.contains(ENSEMBLE_STAT_P50_QUANTITY_NAME)) return RimPlotCurve::SYMBOL_DIAMOND;
return RimPlotCurve::SYMBOL_ELLIPSE;
}