mirror of
https://github.com/OPM/ResInsight.git
synced 2026-11-01 16:43:03 -06:00
Histogram: provide more reasonable default for data sources.
This commit is contained in:
1 parent
5662b43ec5
commit
f743394d8b
8 files changed
+78
No files matched your search
@@ -66,6 +66,7 @@ void RicNewHistogramCurveFeature::onActionTriggered( bool isChecked )
|
||||
if ( plot )
|
||||
{
|
||||
RimHistogramDataSource* dataSource = getDataSourceFromString( userData().toString() );
|
||||
dataSource->setDefaults();
|
||||
RicHistogramPlotTools::createHistogramCurve( plot, dataSource );
|
||||
}
|
||||
}
|
||||
|
||||
+22
@@ -203,3 +203,25 @@ void RimEnsembleParameterHistogramDataSource::setEnsemble( RimSummaryEnsemble* e
|
||||
{
|
||||
m_ensemble = ensemble;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimEnsembleParameterHistogramDataSource::setDefaults()
|
||||
{
|
||||
std::vector<RimSummaryEnsemble*> ensembles = RimProject::current()->summaryEnsembles();
|
||||
if ( !ensembles.empty() )
|
||||
{
|
||||
m_ensemble = ensembles[0];
|
||||
auto parameters = m_ensemble->variationSortedEnsembleParameters();
|
||||
// Find first valid numeric parameter
|
||||
for ( const RigEnsembleParameter& p : m_ensemble->variationSortedEnsembleParameters() )
|
||||
{
|
||||
if ( p.isNumeric() && p.isValid() )
|
||||
{
|
||||
m_parameter = p.name;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+2
@@ -45,6 +45,8 @@ public:
|
||||
|
||||
HistogramResult compute( RimHistogramPlot::GraphType graphType, RimHistogramPlot::FrequencyType frequencyType ) const override;
|
||||
|
||||
void setDefaults() override;
|
||||
|
||||
std::string name() const override;
|
||||
|
||||
protected:
|
||||
|
||||
+22
@@ -303,3 +303,25 @@ QString RimEnsembleSummaryVectorHistogramDataSource::formatDateTime( const QDate
|
||||
RiaDefines::DateFormatComponents::DATE_FORMAT_YEAR_MONTH_DAY );
|
||||
return RiaQDateTimeTools::toStringUsingApplicationLocale( dateTime, dateFormatString );
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimEnsembleSummaryVectorHistogramDataSource::setDefaults()
|
||||
{
|
||||
RimProject* proj = RimProject::current();
|
||||
|
||||
std::vector<RimSummaryEnsemble*> ensembles = proj->summaryEnsembles();
|
||||
if ( !ensembles.empty() )
|
||||
{
|
||||
m_ensemble = ensembles[0];
|
||||
auto addr = RifEclipseSummaryAddress::fieldAddress( "FOPT" );
|
||||
setSummaryAddress( addr );
|
||||
std::set<time_t> allTimeSteps = m_ensemble->ensembleTimeSteps();
|
||||
if ( !allTimeSteps.empty() )
|
||||
{
|
||||
QDateTime dateTime = RiaQDateTimeTools::fromTime_t( *( allTimeSteps.rbegin() ) );
|
||||
setTimeStep( dateTime );
|
||||
}
|
||||
}
|
||||
}
|
||||
+2
@@ -50,6 +50,8 @@ public:
|
||||
|
||||
HistogramResult compute( RimHistogramPlot::GraphType graphType, RimHistogramPlot::FrequencyType frequencyType ) const override;
|
||||
|
||||
void setDefaults() override;
|
||||
|
||||
std::string name() const override;
|
||||
|
||||
protected:
|
||||
|
||||
+25
@@ -251,3 +251,28 @@ void RimGridStatisticsHistogramDataSource ::initAfterRead()
|
||||
m_property->setEclipseCase( eclipseCase );
|
||||
}
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimGridStatisticsHistogramDataSource::setDefaults()
|
||||
{
|
||||
RimProject* project = RimProject::current();
|
||||
if ( project )
|
||||
{
|
||||
if ( !project->eclipseCases().empty() )
|
||||
{
|
||||
RimEclipseCase* eclipseCase = project->eclipseCases().front();
|
||||
m_case = eclipseCase;
|
||||
m_property->setEclipseCase( eclipseCase );
|
||||
|
||||
m_property->setResultType( RiaDefines::ResultCatType::STATIC_NATIVE );
|
||||
m_property->setResultVariable( "PORO" );
|
||||
|
||||
if ( eclipseCase && !eclipseCase->reservoirViews().empty() )
|
||||
{
|
||||
m_cellFilterView.setValue( eclipseCase->reservoirViews().front() );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -48,6 +48,8 @@ public:
|
||||
|
||||
std::string name() const override;
|
||||
|
||||
void setDefaults() override;
|
||||
|
||||
protected:
|
||||
QList<caf::PdmOptionItemInfo> calculateValueOptions( const caf::PdmFieldHandle* fieldNeedingOptions ) override;
|
||||
void defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering ) override;
|
||||
|
||||
@@ -59,6 +59,8 @@ public:
|
||||
|
||||
virtual HistogramResult compute( RimHistogramPlot::GraphType graphType, RimHistogramPlot::FrequencyType frequencyType ) const = 0;
|
||||
|
||||
virtual void setDefaults() = 0;
|
||||
|
||||
virtual std::string name() const = 0;
|
||||
|
||||
static std::vector<double> computeHistogramBins( double min, double max, int numBins, RimHistogramPlot::GraphType graphType );
|
||||
|
||||
Reference in new issue
Block a user