Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
06/18/12 11:18:51 (12 years ago)
Author:
sforsten
Message:

#1758:

  • merged trunk r7330:8022 into branch
  • importButton shows a message, if clicked and it can't be used
Location:
branches/ChangeDatasetOfRegressionModel/HeuristicLab.Problems.DataAnalysis.Views
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/ChangeDatasetOfRegressionModel/HeuristicLab.Problems.DataAnalysis.Views

  • branches/ChangeDatasetOfRegressionModel/HeuristicLab.Problems.DataAnalysis.Views/3.4/Regression/RegressionSolutionErrorCharacteristicsCurveView.cs

    r7259 r8032  
    2727using HeuristicLab.MainForm;
    2828using HeuristicLab.MainForm.WindowsForms;
     29
    2930namespace HeuristicLab.Problems.DataAnalysis.Views {
    3031  [View("Error Characteristics Curve")]
     
    104105      var originalValues = GetOriginalValues().ToList();
    105106      constantModel = CreateConstantModel();
    106       var meanModelEstimatedValues = GetEstimatedValues(constantModel);
    107       var meanModelResiduals = GetResiduals(originalValues, meanModelEstimatedValues);
    108 
    109       meanModelResiduals.Sort();
    110       chart.ChartAreas[0].AxisX.Maximum = Math.Ceiling(meanModelResiduals.Last());
    111       chart.ChartAreas[0].CursorX.Interval = meanModelResiduals.First() / 100;
    112 
    113       Series meanModelSeries = new Series("Mean Model");
    114       meanModelSeries.ChartType = SeriesChartType.FastLine;
    115       UpdateSeries(meanModelResiduals, meanModelSeries);
    116       meanModelSeries.ToolTip = "Area over Curve: " + CalculateAreaOverCurve(meanModelSeries);
    117       meanModelSeries.Tag = constantModel;
    118       chart.Series.Add(meanModelSeries);
     107      var baselineEstimatedValues = GetEstimatedValues(constantModel);
     108      var baselineResiduals = GetResiduals(originalValues, baselineEstimatedValues);
     109
     110      baselineResiduals.Sort();
     111      chart.ChartAreas[0].AxisX.Maximum = Math.Ceiling(baselineResiduals.Last());
     112      chart.ChartAreas[0].CursorX.Interval = baselineResiduals.First() / 100;
     113
     114      Series baselineSeries = new Series("Baseline");
     115      baselineSeries.ChartType = SeriesChartType.FastLine;
     116      UpdateSeries(baselineResiduals, baselineSeries);
     117      baselineSeries.ToolTip = "Area over Curve: " + CalculateAreaOverCurve(baselineSeries);
     118      baselineSeries.Tag = constantModel;
     119      chart.Series.Add(baselineSeries);
    119120
    120121      AddRegressionSolution(Content);
     
    200201    }
    201202
    202     protected IEnumerable<double> GetMeanModelEstimatedValues(IEnumerable<double> originalValues) {
     203    protected IEnumerable<double> GetbaselineEstimatedValues(IEnumerable<double> originalValues) {
    203204      double averageTrainingTarget = ProblemData.Dataset.GetDoubleValues(ProblemData.TargetVariable, ProblemData.TrainingIndizes).Average();
    204205      return Enumerable.Repeat(averageTrainingTarget, originalValues.Count());
     
    229230    }
    230231
    231     #region Mean Model
    232     private void chart_MouseDown(object sender, MouseEventArgs e) {
    233       if (e.Clicks < 2) return;
     232    #region Baseline
     233    private void Chart_MouseDoubleClick(object sender, MouseEventArgs e) {
    234234      HitTestResult result = chart.HitTest(e.X, e.Y);
    235235      if (result.ChartElementType != ChartElementType.LegendItem) return;
    236       if (result.Series.Name != constantModel.Name) return;
    237236
    238237      MainFormManager.MainForm.ShowContent((IRegressionSolution)result.Series.Tag);
     
    242241      double averageTrainingTarget = ProblemData.Dataset.GetDoubleValues(ProblemData.TargetVariable, ProblemData.TrainingIndizes).Average();
    243242      var solution = new ConstantRegressionModel(averageTrainingTarget).CreateRegressionSolution(ProblemData);
    244       solution.Name = "Mean Model";
     243      solution.Name = "Baseline";
    245244      return solution;
    246245    }
    247246    #endregion
     247
     248    private void chart_MouseMove(object sender, MouseEventArgs e) {
     249      HitTestResult result = chart.HitTest(e.X, e.Y);
     250      if (result.ChartElementType == ChartElementType.LegendItem)
     251        Cursor = Cursors.Hand;
     252      else
     253        Cursor = Cursors.Default;
     254    }
    248255  }
    249256}
Note: See TracChangeset for help on using the changeset viewer.