Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
07/21/16 16:57:58 (8 years ago)
Author:
mkommend
Message:

#2594: Merged r13764, r13765, r13807, r14007, r14008, r14014, r14152, r14155, r14156, r14159 to stable.

Location:
stable
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • stable

  • stable/HeuristicLab.Problems.DataAnalysis.Views

  • stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/Regression/RegressionSolutionLineChartView.cs

    r12009 r14161  
    2626using System.Windows.Forms.DataVisualization.Charting;
    2727using HeuristicLab.MainForm;
     28using HeuristicLab.Visualization.ChartControlsExtensions;
    2829
    2930namespace HeuristicLab.Problems.DataAnalysis.Views {
     
    9697        this.ToggleSeriesData(this.chart.Series[ESTIMATEDVALUES_ALL_SERIES_NAME]);
    9798
     99        // set the y-axis bounds
     100        var axisY = this.chart.ChartAreas[0].AxisY;
     101        double min = double.MaxValue, max = double.MinValue;
     102        foreach (var point in chart.Series.SelectMany(x => x.Points)) {
     103          if (!point.YValues.Any() || double.IsInfinity(point.YValues[0]) || double.IsNaN(point.YValues[0]))
     104            continue;
     105          var y = point.YValues[0];
     106          if (y < min)
     107            min = y;
     108          if (y > max)
     109            max = y;
     110        }
     111
     112        double axisMin, axisMax, axisInterval;
     113        ChartUtil.CalculateOptimalAxisInterval(min, max, out axisMin, out axisMax, out axisInterval);
     114        axisY.Minimum = axisMin;
     115        axisY.Maximum = axisMax;
     116        axisY.Interval = axisInterval;
     117
    98118        UpdateCursorInterval();
    99119        this.UpdateStripLines();
  • stable/HeuristicLab.Problems.DataAnalysis.Views/3.4/Regression/RegressionSolutionScatterPlotView.cs

    r14112 r14161  
    2626using HeuristicLab.MainForm;
    2727using HeuristicLab.MainForm.WindowsForms;
     28using HeuristicLab.Visualization.ChartControlsExtensions;
    2829
    2930namespace HeuristicLab.Problems.DataAnalysis.Views {
     
    169170        double min = Content.EstimatedTrainingValues.Concat(Content.EstimatedTestValues.Concat(Content.EstimatedValues.Concat(dataset.GetDoubleValues(targetVariableName)))).Min();
    170171
    171         max = max + 0.2 * Math.Abs(max);
    172         min = min - 0.2 * Math.Abs(min);
    173 
    174         double interestingValuesRange = max - min;
    175         int digits = Math.Max(0, 3 - (int)Math.Log10(interestingValuesRange));
    176 
    177         max = Math.Round(max, digits);
    178         min = Math.Round(min, digits);
    179 
    180         this.chart.ChartAreas[0].AxisX.Maximum = max;
    181         this.chart.ChartAreas[0].AxisX.Minimum = min;
    182         this.chart.ChartAreas[0].AxisY.Maximum = max;
    183         this.chart.ChartAreas[0].AxisY.Minimum = min;
     172        double axisMin, axisMax, axisInterval;
     173        ChartUtil.CalculateOptimalAxisInterval(min, max, out axisMin, out axisMax, out axisInterval);
     174        this.chart.ChartAreas[0].AxisX.Maximum = axisMax;
     175        this.chart.ChartAreas[0].AxisX.Minimum = axisMin;
     176        this.chart.ChartAreas[0].AxisX.Interval = axisInterval;
     177        this.chart.ChartAreas[0].AxisY.Maximum = axisMax;
     178        this.chart.ChartAreas[0].AxisY.Minimum = axisMin;
     179        this.chart.ChartAreas[0].AxisY.Interval = axisInterval;
     180
    184181        UpdateCursorInterval();
    185182      }
Note: See TracChangeset for help on using the changeset viewer.