Only show histogram statistics in info overlay box if the histogram has valid data.

This commit is contained in:
Jon Jenssen
2020-09-03 14:41:24 +02:00
committed by jonjenssen
parent 49a1c94364
commit 64e4ce3ab9
2 changed files with 60 additions and 45 deletions

View File

@@ -690,14 +690,17 @@ QString Rim3dOverlayInfoConfig::resultInfoText( const HistogramData& histData,
{ {
infoText += QString( "%1<br>" ).arg( diffResString ); infoText += QString( "%1<br>" ).arg( diffResString );
} }
infoText += QString( "<br><b>Statistics:</b> Current Time Step and Visible Cells" ); if ( histData.isValid() )
infoText += QString( "<table border=0 cellspacing=5 >" {
"<tr> <td>Min</td> <td>Mean</td> <td>Max</td> </tr>" infoText += QString( "<br><b>Statistics:</b> Current Time Step and Visible Cells" );
"<tr> <td>%1</td> <td> %2</td> <td> %3</td> </tr>" infoText += QString( "<table border=0 cellspacing=5 >"
"</table>" ) "<tr> <td>Min</td> <td>Mean</td> <td>Max</td> </tr>"
.arg( histData.min ) "<tr> <td>%1</td> <td> %2</td> <td> %3</td> </tr>"
.arg( histData.mean ) "</table>" )
.arg( histData.max ); .arg( histData.min )
.arg( histData.mean )
.arg( histData.max );
}
} }
} }
else if ( eclipseView ) else if ( eclipseView )
@@ -740,19 +743,22 @@ QString Rim3dOverlayInfoConfig::resultInfoText( const HistogramData& histData,
infoText += QString( "<b>Dual Porosity Type:</b> %1<br>" ).arg( porosityModelText ); infoText += QString( "<b>Dual Porosity Type:</b> %1<br>" ).arg( porosityModelText );
} }
infoText += QString( "<br><b>Statistics:</b> " ) + timeRangeText + " and " + m_statisticsCellRange().uiText(); if ( histData.isValid() )
infoText += {
QString( "<table border=0 cellspacing=5 >" infoText += QString( "<br><b>Statistics:</b> " ) + timeRangeText + " and " +
"<tr> <td>Min</td> <td>P90</td> <td>Mean</td> <td>P10</td> <td>Max</td> <td>Sum</td> </tr>" m_statisticsCellRange().uiText();
"<tr> <td>%1</td> <td> %2</td> <td> %3</td> <td> %4</td> <td> %5</td> <td> %6</td> </tr>" infoText +=
"</table>" ) QString( "<table border=0 cellspacing=5 >"
.arg( histData.min ) "<tr> <td>Min</td> <td>P90</td> <td>Mean</td> <td>P10</td> <td>Max</td> <td>Sum</td> </tr>"
.arg( histData.p10 ) "<tr> <td>%1</td> <td> %2</td> <td> %3</td> <td> %4</td> <td> %5</td> <td> %6</td> </tr>"
.arg( histData.mean ) "</table>" )
.arg( histData.p90 ) .arg( histData.min )
.arg( histData.max ) .arg( histData.p10 )
.arg( histData.sum ); .arg( histData.mean )
.arg( histData.p90 )
.arg( histData.max )
.arg( histData.sum );
}
if ( eclipseView->faultResultSettings()->hasValidCustomResult() ) if ( eclipseView->faultResultSettings()->hasValidCustomResult() )
{ {
QString faultMapping; QString faultMapping;
@@ -886,15 +892,19 @@ QString Rim3dOverlayInfoConfig::resultInfoText( const HistogramData& histData, R
{ {
infoText += QString( "%1<br>" ).arg( diffResString ); infoText += QString( "%1<br>" ).arg( diffResString );
} }
infoText += QString( "<br><b>Statistics:</b> " ) + m_statisticsTimeRange().uiText() + " and " +
m_statisticsCellRange().uiText(); if ( histData.isValid() )
infoText += QString( "<table border=0 cellspacing=5 >" {
"<tr> <td>Min</td> <td>Mean</td> <td>Max</td> </tr>" infoText += QString( "<br><b>Statistics:</b> " ) + m_statisticsTimeRange().uiText() + " and " +
"<tr> <td>%1</td> <td> %2</td> <td> %3</td> </tr>" m_statisticsCellRange().uiText();
"</table>" ) infoText += QString( "<table border=0 cellspacing=5 >"
.arg( histData.min ) "<tr> <td>Min</td> <td>Mean</td> <td>Max</td> </tr>"
.arg( histData.mean ) "<tr> <td>%1</td> <td> %2</td> <td> %3</td> </tr>"
.arg( histData.max ); "</table>" )
.arg( histData.min )
.arg( histData.mean )
.arg( histData.max );
}
} }
else else
{ {
@@ -902,19 +912,24 @@ QString Rim3dOverlayInfoConfig::resultInfoText( const HistogramData& histData, R
{ {
infoText += QString( "%1<br>" ).arg( diffResString ); infoText += QString( "%1<br>" ).arg( diffResString );
} }
infoText += QString( "<br><b>Statistics:</b> " ) + m_statisticsTimeRange().uiText() + " and " +
m_statisticsCellRange().uiText(); if ( histData.isValid() )
infoText += {
QString( "<table border=0 cellspacing=5 >" infoText += QString( "<br><b>Statistics:</b> " ) + m_statisticsTimeRange().uiText() + " and " +
"<tr> <td>Min</td> <td>P90</td> <td>Mean</td> <td>P10</td> <td>Max</td> <td>Sum</td> </tr>" m_statisticsCellRange().uiText();
"<tr> <td>%1</td> <td> %2</td> <td> %3</td> <td> %4</td> <td> %5</td> <td> %6</td> </tr>" infoText +=
"</table>" ) QString(
.arg( histData.min ) "<table border=0 cellspacing=5 >"
.arg( histData.p10 ) "<tr> <td>Min</td> <td>P90</td> <td>Mean</td> <td>P10</td> <td>Max</td> <td>Sum</td> </tr>"
.arg( histData.mean ) "<tr> <td>%1</td> <td> %2</td> <td> %3</td> <td> %4</td> <td> %5</td> <td> %6</td> </tr>"
.arg( histData.p90 ) "</table>" )
.arg( histData.max ) .arg( histData.min )
.arg( histData.sum ); .arg( histData.p10 )
.arg( histData.mean )
.arg( histData.p90 )
.arg( histData.max )
.arg( histData.sum );
}
} }
} }
else else

View File

@@ -70,9 +70,9 @@ class Rim3dOverlayInfoConfig : public caf::PdmObject
double sum; double sum;
double weightedMean; double weightedMean;
const std::vector<size_t>* histogram; const std::vector<size_t>* histogram;
bool isValid( double parameter ) { return parameter != HUGE_VAL && parameter != -HUGE_VAL; } bool isValid( double parameter ) const { return parameter != HUGE_VAL && parameter != -HUGE_VAL; }
bool isValid() { return histogram && histogram->size() > 0 && isValid( min ) && isValid( max ); } bool isValid() const { return histogram && histogram->size() > 0 && isValid( min ) && isValid( max ); }
}; };
public: public: