public void CreateAllCharts(SignalAggregationMetricOptions options) { options.SelectedChartType = SeriesChartType.Column; options.SelectedAggregationType = AggregationType.Sum; options.CreateMetric(); options.SelectedAggregationType = AggregationType.Average; options.CreateMetric(); options.SelectedChartType = SeriesChartType.Line; options.SelectedAggregationType = AggregationType.Sum; options.CreateMetric(); options.SelectedAggregationType = AggregationType.Average; options.CreateMetric(); options.SelectedChartType = SeriesChartType.Pie; options.SelectedAggregationType = AggregationType.Sum; options.CreateMetric(); options.SelectedAggregationType = AggregationType.Average; options.CreateMetric(); options.SelectedChartType = SeriesChartType.StackedColumn; options.SelectedAggregationType = AggregationType.Sum; options.CreateMetric(); options.SelectedAggregationType = AggregationType.Average; options.CreateMetric(); options.SelectedChartType = SeriesChartType.StackedArea; options.SelectedAggregationType = AggregationType.Sum; options.CreateMetric(); options.SelectedAggregationType = AggregationType.Average; options.CreateMetric(); }
public static Chart TransitSignalPriorityAggregationChart(SignalAggregationMetricOptions options) { options.MetricTypeID = 24; var chart = ChartInitialization(options); return(chart); }
protected void SetFilterSignal(SignalAggregationMetricOptions options) { List <FilterSignal> filterSignals = new List <FilterSignal>(); var signals = Db.Signals.Take(2); foreach (var signal in signals) { var filterSignal = new FilterSignal { SignalId = signal.SignalID, Exclude = false }; foreach (var approach in signal.Approaches) { var filterApproach = new FilterApproach { ApproachId = approach.ApproachID, Description = String.Empty, Exclude = false }; filterSignal.FilterApproaches.Add(filterApproach); foreach (var detector in approach.Detectors) { filterApproach.FilterDetectors.Add(new FilterDetector { Id = detector.ID, Description = String.Empty, Exclude = false }); } } filterSignals.Add(filterSignal); } options.FilterSignals = filterSignals; options.FilterDirections = new List <FilterDirection>(); options.FilterDirections.Add(new FilterDirection { Description = "", DirectionTypeId = 0, Include = true }); options.FilterDirections.Add(new FilterDirection { Description = "", DirectionTypeId = 1, Include = true }); options.FilterDirections.Add(new FilterDirection { Description = "", DirectionTypeId = 2, Include = true }); options.FilterDirections.Add(new FilterDirection { Description = "", DirectionTypeId = 3, Include = true }); options.FilterMovements = new List <FilterMovement>(); options.FilterMovements.Add(new FilterMovement { Description = "", MovementTypeId = 0, Include = true }); options.FilterMovements.Add(new FilterMovement { Description = "", MovementTypeId = 1, Include = true }); options.FilterMovements.Add(new FilterMovement { Description = "", MovementTypeId = 2, Include = true }); options.FilterMovements.Add(new FilterMovement { Description = "", MovementTypeId = 3, Include = true }); }
private static void SetIntY2Axis(ChartArea chartArea, SignalAggregationMetricOptions options) { chartArea.AxisY2.Enabled = AxisEnabled.True; chartArea.AxisY2.MajorGrid.Enabled = false; chartArea.AxisY2.MinorGrid.Enabled = false; chartArea.AxisY2.Title = options.Y2AxisTitle; chartArea.AxisY2.Minimum = 0; }
private static void SetStringXAxis(ChartArea chartArea, SignalAggregationMetricOptions options) { chartArea.AxisX.Title = "Signals"; chartArea.AxisX.Interval = 1; chartArea.AxisX.LabelAutoFitStyle = LabelAutoFitStyles.None; chartArea.AxisX.LabelStyle.Font = new Font("Microsoft Sans Serif", 12); chartArea.AxisX.LabelStyle.Angle = 45; }
public static Chart PreemptionAggregationChart(SignalAggregationMetricOptions options) { options.MetricTypeID = 22; var chart = ChartInitialization(options); Bins = GetBins(options); return(chart); }
public static Chart CreateApproachDelayAggregationChart(SignalAggregationMetricOptions options) { options.MetricTypeID = 23; var chart = ChartInitialization(options); Bins = GetBins(options); return(chart); }
public static Chart CreatePlatoonRatioAggregationChart(SignalAggregationMetricOptions options) { options.MetricTypeID = 19; var chart = ChartInitialization(options); Bins = GetBins(options); return(chart); }
public static Chart CreatePedestrianActuationAggregationChart(SignalAggregationMetricOptions options) { options.MetricTypeID = 21; var chart = ChartInitialization(options); Bins = GetBins(options); return(chart); }
public static Chart CreateArrivalOnGreenAggregationChart(SignalAggregationMetricOptions options) { options.MetricTypeID = 18; var chart = ChartInitialization(options); Bins = GetBins(options); return(chart); }
protected override void LoadBins(SignalAggregationMetricOptions options, Models.Signal signal) { var signalEventCountAggregationRepository = SignalEventCountAggregationRepositoryFactory .Create(); var signalEventCounts = signalEventCountAggregationRepository.GetSignalEventCountAggregationBySignalIdAndDateRange( signal.SignalID, BinsContainers.Min(b => b.Start), BinsContainers.Max(b => b.End)); if (signalEventCounts != null) { var concurrentBinContainers = new ConcurrentBag <BinsContainer>(); //foreach (var binsContainer in binsContainers) Parallel.ForEach(BinsContainers, binsContainer => { var tempBinsContainer = new BinsContainer(binsContainer.Start, binsContainer.End); var concurrentBins = new ConcurrentBag <Bin>(); //foreach (var bin in binsContainer.Bins) Parallel.ForEach(binsContainer.Bins, bin => { if (signalEventCounts.Any(s => s.BinStartTime >= bin.Start && s.BinStartTime < bin.End)) { var signalEventCountSum = 0; switch (options.SelectedAggregatedDataType.DataName) { case "EventCount": signalEventCountSum = signalEventCounts.Where(s => s.BinStartTime >= bin.Start && s.BinStartTime < bin.End) .Sum(s => s.EventCount); break; } Bin newBin = new Bin { Start = bin.Start, End = bin.End, Sum = signalEventCountSum, Average = signalEventCountSum }; concurrentBins.Add(newBin); } else { concurrentBins.Add(new Bin { Start = bin.Start, End = bin.End, Sum = 0, Average = 0 }); } }); tempBinsContainer.Bins = concurrentBins.OrderBy(c => c.Start).ToList(); concurrentBinContainers.Add(tempBinsContainer); }); BinsContainers = concurrentBinContainers.OrderBy(b => b.Start).ToList(); } }
public static Chart CreateAdvancedCountsAggregationChart(SignalAggregationMetricOptions options) { options.MetricTypeID = 17; var chart = ChartInitialization(options); Bins = GetBins(options); return(chart); }
private static void SetUpY2Axis(ChartArea chartArea, SignalAggregationMetricOptions options) { chartArea.AxisY2.MaximumAutoSize = 50; chartArea.AxisY2.Enabled = AxisEnabled.True; chartArea.AxisY2.MajorTickMark.Enabled = false; chartArea.AxisY2.MajorGrid.Enabled = false; chartArea.AxisY2.IntervalType = DateTimeIntervalType.Number; chartArea.AxisY2.Title = options.Y2AxisTitle ?? ""; }
public static Chart CreateStringXIntYChart(SignalAggregationMetricOptions options) { var chart = new Chart(); SetImageProperties(chart); chart.ChartAreas.Add(CreateStringXIntYChartArea(options)); SetLegend(chart); chart.Titles.Add(options.ChartTitle); return(chart); }
private static ChartArea CreateStringXIntYChartArea(SignalAggregationMetricOptions options) { var chartArea = new ChartArea(); chartArea.Name = "ChartArea1"; SetDimension(options, chartArea); SetIntYAxis(chartArea, options); SetStringXAxis(chartArea, options); return(chartArea); }
private static void SetDimension(SignalAggregationMetricOptions options, ChartArea chartArea) { if (options.SelectedDimension == Dimension.ThreeDimensional) { chartArea.Area3DStyle = new ChartArea3DStyle { Enable3D = true, WallWidth = 0 } } ; }
private static void SetIntYAxis(ChartArea chartArea, SignalAggregationMetricOptions options) { if (options.YAxisMax != null) { chartArea.AxisY.Maximum = options.YAxisMax.Value; } else { chartArea.AxisY.IntervalAutoMode = IntervalAutoMode.VariableCount; } chartArea.AxisY.Title = options.YAxisTitle; chartArea.AxisY.Minimum = 0; }
private static ChartArea CreateTimeXIntYChartArea(SignalAggregationMetricOptions options) { var chartArea = new ChartArea(); SetDimension(options, chartArea); chartArea.Name = "ChartArea1"; SetIntYAxis(chartArea, options); if (options.ShowEventCount) { SetIntY2Axis(chartArea, options); } SetTimeXAxis(chartArea, options); return(chartArea); }
private ActionResult GetChart(AggDataExportViewModel aggDataExportViewModel, SignalAggregationMetricOptions options) { Enum.TryParse(aggDataExportViewModel.SelectedChartType, out SeriesChartType tempSeriesChartType); options.SelectedChartType = tempSeriesChartType; if (TryValidateModel(aggDataExportViewModel) && aggDataExportViewModel.FilterSignals.Count > 0) { SetCommonValues(aggDataExportViewModel, options); return(GetChartFromService(options)); } else { return(Content("<h1 class='text-danger'>Missing Parameters</h1>")); } }
protected override void LoadBins(SignalAggregationMetricOptions options, Models.Signal signal) { for (var i = 0; i < BinsContainers.Count; i++) { for (var binIndex = 0; binIndex < BinsContainers[i].Bins.Count; binIndex++) { var bin = BinsContainers[i].Bins[binIndex]; foreach (var approachSplitFailAggregationContainer in ApproachSplitFailures) { bin.Sum += approachSplitFailAggregationContainer.BinsContainers[i].Bins[binIndex].Sum; bin.Average = ApproachSplitFailures.Count > 0 ? bin.Sum / ApproachSplitFailures.Count : 0; } } } }
protected override void LoadBins(SignalAggregationMetricOptions options, Models.Signal signal) { for (var i = 0; i < BinsContainers.Count; i++) { for (var binIndex = 0; binIndex < BinsContainers[i].Bins.Count; binIndex++) { var bin = BinsContainers[i].Bins[binIndex]; foreach (var speedAggregationByApproach in ApproachSpeedEvents) { bin.Sum += speedAggregationByApproach.BinsContainers[i].Bins[binIndex].Sum; } bin.Average = ApproachSpeedEvents.Count > 0 ? bin.Sum / ApproachSpeedEvents.Count : 0; } } }
public static Chart ChartInitialization(SignalAggregationMetricOptions options) { var chart = new Chart(); SetImageProperties(chart); ChartArea chartAreaAgg = CreateTimeXIntYChartArea(options); chart.ChartAreas.Add(chartAreaAgg); chart.Titles.Add(options.ChartTitle); if (options.ShowEventCount) { SetUpY2Axis(chartAreaAgg, options); } return(chart); }
protected void CreateStackedColumnChart(SignalAggregationMetricOptions options) { try { options.SelectedChartType = SeriesChartType.StackedColumn; options.SelectedAggregationType = AggregationType.Sum; options.CreateMetric(); //options.SelectedAggregationType = AggregationType.Average; //options.CreateMetric(); } catch (Exception e) { Console.WriteLine(e); throw; } }
//public static Chart CreateSplitMonitorChart(SplitMonitorOptions options) //{ // var chart = new Chart(); // SetImageProperties(chart); // chart.ChartAreas.Add(CreateSplitMonitorChartArea(options)); // SetLegend(chart); // return chart; //} //private static ChartArea CreateSplitMonitorChartArea(SplitMonitorOptions options) //{ // var chartArea = new ChartArea(); // chartArea.Name = "ChartArea1"; // SetUpXAxis(chartArea, options); // SetUpX2Axis(chartArea, options); // return chartArea; //} public static Chart CreateTimeXIntYChart(SignalAggregationMetricOptions options, List <Models.Signal> signals) { var chart = new Chart(); SetImageProperties(chart); chart.ChartAreas.Add(CreateTimeXIntYChartArea(options)); SetLegend(chart); var signalDescriptions = string.Empty; foreach (var signal in signals) { signalDescriptions += signal.SignalDescription + ","; } signalDescriptions = signalDescriptions.TrimEnd(','); chart.Titles.Add(signalDescriptions + "\n" + options.ChartTitle); return(chart); }
private ActionResult GetChartFromService(SignalAggregationMetricOptions options) { Models.MetricAndXmlResultViewModel result = new Models.MetricAndXmlResultViewModel(); MetricGeneratorService.MetricGeneratorClient client = new MetricGeneratorService.MetricGeneratorClient(); try { client.Open(); var resultPaths = client.GetChartAndXmlFileLocations(options); client.Close(); result.ChartPaths = resultPaths.ToList(); return(PartialView("~/Views/AggregateDataExport/MetricResult.cshtml", result)); } catch (Exception ex) { client.Close(); return(Content("<h1>" + ex.Message + "</h1>")); } }
public static List <Bin> GetBins(SignalAggregationMetricOptions options) { var bins = new List <Bin>(); var timeX = new DateTime(); timeX = options.StartDate; while (timeX <= options.EndDate) { var bin = new Bin(); bin.Start = timeX; //timeX = timeX.AddMinutes(options.BinSize); bin.End = timeX; bins.Add(bin); } return(bins); }
public virtual void CreateTimeMetricStartToFinishAllBinSizesAllAggregateDataTypesTest(SignalAggregationMetricOptions options) { AddValidValuestoLists(); SetOptionDefaults(options); foreach (var xAxisType in Enum.GetValues(typeof(XAxisType)).Cast <XAxisType>().ToList()) { options.SelectedXAxisType = xAxisType; foreach (var seriesType in Enum.GetValues(typeof(SeriesType)).Cast <SeriesType>().ToList()) { options.SelectedSeries = seriesType; foreach (var tempBinSize in Enum.GetValues(typeof(BinFactoryOptions.BinSize)) .Cast <BinFactoryOptions.BinSize>().ToList()) { SetTimeOptionsBasedOnBinSize(options, tempBinSize); options.TimeOptions.SelectedBinSize = tempBinSize; foreach (var aggregatedDataType in options.AggregatedDataTypes) { options.SelectedAggregatedDataType = aggregatedDataType; try { if (IsValidCombination(options)) { CreateStackedColumnChart(options); Assert.IsTrue(options.ReturnList.Count == 1); } } catch (InvalidBinSizeException e) { Debug.WriteLine(e.Message); } options.ReturnList = new List <string>(); } } } } }
private static void SetTimeOptionsBasedOnBinSize(SignalAggregationMetricOptions options, BinFactoryOptions.BinSize binSize) { if (binSize == BinFactoryOptions.BinSize.Day) { options.StartDate = Convert.ToDateTime("10/1/2017"); options.EndDate = Convert.ToDateTime("11/1/2017"); options.TimeOptions = new BinFactoryOptions( Convert.ToDateTime("10/1/2017"), Convert.ToDateTime("11/1/2017"), null, null, null, null, new List <DayOfWeek> { DayOfWeek.Monday, DayOfWeek.Tuesday, DayOfWeek.Wednesday, DayOfWeek.Thursday, DayOfWeek.Friday, DayOfWeek.Saturday, DayOfWeek.Sunday }, BinFactoryOptions.BinSize.FifteenMinute, BinFactoryOptions.TimeOptions.StartToEnd); } else if (binSize == BinFactoryOptions.BinSize.Month) { options.StartDate = Convert.ToDateTime("1/1/2017"); options.EndDate = Convert.ToDateTime("1/1/2018"); options.TimeOptions = new BinFactoryOptions( Convert.ToDateTime("1/1/2017"), Convert.ToDateTime("1/1/2018"), null, null, null, null, new List <DayOfWeek> { DayOfWeek.Monday, DayOfWeek.Tuesday, DayOfWeek.Wednesday, DayOfWeek.Thursday, DayOfWeek.Friday, DayOfWeek.Saturday, DayOfWeek.Sunday }, BinFactoryOptions.BinSize.FifteenMinute, BinFactoryOptions.TimeOptions.StartToEnd); } else if (binSize == BinFactoryOptions.BinSize.Year) { options.StartDate = Convert.ToDateTime("1/1/2016"); options.EndDate = Convert.ToDateTime("1/1/2018"); options.TimeOptions = new BinFactoryOptions( Convert.ToDateTime("1/1/2016"), Convert.ToDateTime("1/1/2018"), null, null, null, null, new List <DayOfWeek> { DayOfWeek.Monday, DayOfWeek.Tuesday, DayOfWeek.Wednesday, DayOfWeek.Thursday, DayOfWeek.Friday, DayOfWeek.Saturday, DayOfWeek.Sunday }, BinFactoryOptions.BinSize.FifteenMinute, BinFactoryOptions.TimeOptions.StartToEnd); } else { options.StartDate = Convert.ToDateTime("10/17/2017"); options.EndDate = Convert.ToDateTime("10/18/2017"); options.TimeOptions = new BinFactoryOptions( Convert.ToDateTime("10/17/2017"), Convert.ToDateTime("10/18/2017"), null, null, null, null, new List <DayOfWeek> { DayOfWeek.Monday, DayOfWeek.Tuesday, DayOfWeek.Wednesday, DayOfWeek.Thursday, DayOfWeek.Friday, DayOfWeek.Saturday, DayOfWeek.Sunday }, BinFactoryOptions.BinSize.FifteenMinute, BinFactoryOptions.TimeOptions.StartToEnd); } if (options.SelectedXAxisType == XAxisType.TimeOfDay) { options.TimeOptions.TimeOfDayStartHour = 7; options.TimeOptions.TimeOfDayStartMinute = 0; options.TimeOptions.TimeOfDayEndHour = 10; options.TimeOptions.TimeOfDayStartHour = 0; } }
private static void SetTimeXAxis(ChartArea chartArea, SignalAggregationMetricOptions options) { //var reportTimespan = options.EndDate - options.StartDate; chartArea.AxisX.Title = "Time (Hour of Day)"; chartArea.AxisX.LabelStyle.IsEndLabelVisible = false; chartArea.AxisX.Interval = 1; if (options.SelectedXAxisType == XAxisType.TimeOfDay) { switch (options.TimeOptions.SelectedBinSize) { case BinFactoryOptions.BinSize.Year: { chartArea.AxisX.IntervalType = DateTimeIntervalType.Years; chartArea.AxisX.LabelStyle.Format = "yyyy"; chartArea.AxisX.Title = "Day of Month"; chartArea.AxisX.Minimum = options.TimeOptions.Start.AddYears(-1).ToOADate(); chartArea.AxisX.Maximum = options.TimeOptions.End.AddYears(1).ToOADate(); break; } case BinFactoryOptions.BinSize.Month: { chartArea.AxisX.IntervalType = DateTimeIntervalType.Months; chartArea.AxisX.LabelStyle.Format = "MM/yy"; chartArea.AxisX.Title = "Day of Month"; chartArea.AxisX.Minimum = options.TimeOptions.Start.AddMonths(-1).ToOADate(); chartArea.AxisX.Maximum = options.TimeOptions.End.AddMonths(1).ToOADate(); break; } case BinFactoryOptions.BinSize.Day: { chartArea.AxisX.IntervalType = DateTimeIntervalType.Days; chartArea.AxisX.LabelStyle.Format = "MM/dd/yy"; chartArea.AxisX.Title = "Day of Month"; chartArea.AxisX.Minimum = options.TimeOptions.Start.AddDays(-1).ToOADate(); chartArea.AxisX.Maximum = options.TimeOptions.End.AddDays(1).ToOADate(); break; } default: { chartArea.AxisX.IntervalType = DateTimeIntervalType.Hours; chartArea.AxisX.LabelStyle.Format = "HH"; chartArea.AxisX.Minimum = options.TimeOptions.Start.AddHours(-1).ToOADate(); chartArea.AxisX.Maximum = new DateTime(options.TimeOptions.Start.Year, options.TimeOptions.Start.Month, options.TimeOptions.Start.Day, options.TimeOptions.TimeOfDayEndHour.Value, options.TimeOptions.TimeOfDayEndMinute.Value, 0) .AddHours(1).ToOADate(); break; } } } else { switch (options.TimeOptions.SelectedBinSize) { case BinFactoryOptions.BinSize.FifteenMinute: chartArea.AxisX.IntervalType = DateTimeIntervalType.Hours; chartArea.AxisX.LabelStyle.Format = "HH:mm"; chartArea.AxisX.Minimum = options.TimeOptions.Start.AddMinutes(-15).ToOADate(); chartArea.AxisX.Maximum = options.TimeOptions.End.AddMinutes(15).ToOADate(); break; case BinFactoryOptions.BinSize.ThirtyMinute: chartArea.AxisX.IntervalType = DateTimeIntervalType.Hours; chartArea.AxisX.LabelStyle.Format = "HH:mm"; chartArea.AxisX.Minimum = options.TimeOptions.Start.AddMinutes(-30).ToOADate(); chartArea.AxisX.Maximum = options.TimeOptions.End.AddMinutes(30).ToOADate(); break; case BinFactoryOptions.BinSize.Hour: chartArea.AxisX.IntervalType = DateTimeIntervalType.Hours; chartArea.AxisX.LabelStyle.Format = "HH"; chartArea.AxisX.Minimum = options.TimeOptions.Start.AddHours(-1).ToOADate(); chartArea.AxisX.Maximum = options.TimeOptions.End.AddHours(1).ToOADate(); break; case BinFactoryOptions.BinSize.Day: chartArea.AxisX.IntervalType = DateTimeIntervalType.Days; chartArea.AxisX.LabelStyle.Format = "MM/dd/yy"; chartArea.AxisX.Title = "Day of Month"; chartArea.AxisX.Minimum = options.TimeOptions.Start.AddDays(-1).ToOADate(); chartArea.AxisX.Maximum = options.TimeOptions.End.AddDays(1).ToOADate(); break; //case BinFactoryOptions.BinSize.Week: // chartArea.AxisX.IntervalType = DateTimeIntervalType.Weeks; // chartArea.AxisX.LabelStyle.Format = ""; // chartArea.AxisX.Title = "Start of Week"; // chartArea.AxisX.Minimum = options.StartDate.AddDays(-7).ToOADate(); // break; case BinFactoryOptions.BinSize.Month: chartArea.AxisX.MinorTickMark.Enabled = true; chartArea.AxisX.MajorTickMark.Enabled = true; chartArea.AxisX.IntervalType = DateTimeIntervalType.Months; chartArea.AxisX.Interval = 1; chartArea.AxisX.LabelStyle.Enabled = true; chartArea.AxisX.LabelStyle.Angle = 45; chartArea.AxisX.LabelStyle.IntervalType = DateTimeIntervalType.Months; chartArea.AxisX.LabelStyle.Interval = 1; chartArea.AxisX.Title = "Month and Year"; chartArea.AxisX.Minimum = options.TimeOptions.Start.AddMonths(-1).ToOADate(); chartArea.AxisX.Maximum = options.TimeOptions.End.AddMonths(1).ToOADate(); chartArea.AxisX.LabelAutoFitStyle = LabelAutoFitStyles.DecreaseFont; chartArea.AxisX.LabelStyle.Enabled = true; break; case BinFactoryOptions.BinSize.Year: chartArea.AxisX.IntervalType = DateTimeIntervalType.Years; chartArea.AxisX.LabelStyle.Format = "yyyy"; chartArea.AxisX.Title = "Year"; chartArea.AxisX.Minimum = options.TimeOptions.Start.AddYears(-1).ToOADate(); chartArea.AxisX.Maximum = options.TimeOptions.End.AddYears(1).ToOADate(); break; default: chartArea.AxisX.IntervalType = DateTimeIntervalType.Days; chartArea.AxisX.LabelStyle.Format = "MM/dd/yy"; break; } if (options.TimeOptions.TimeOption == BinFactoryOptions.TimeOptions.TimePeriod && (options.TimeOptions.SelectedBinSize == BinFactoryOptions.BinSize.FifteenMinute || options.TimeOptions.SelectedBinSize == BinFactoryOptions.BinSize.ThirtyMinute || options.TimeOptions.SelectedBinSize == BinFactoryOptions.BinSize.Hour)) { var tempStart = new DateTime(options.TimeOptions.Start.Year, options.TimeOptions.Start.Month, options.TimeOptions.Start.Day, options.TimeOptions.TimeOfDayStartHour ?? 0, options.TimeOptions.TimeOfDayStartMinute ?? 0, 0); var tempEnd = new DateTime(options.TimeOptions.Start.Year, options.TimeOptions.Start.Month, options.TimeOptions.Start.Day, options.TimeOptions.TimeOfDayEndHour ?? 0, options.TimeOptions.TimeOfDayEndMinute ?? 0, 0); chartArea.AxisX.Minimum = tempStart.AddMinutes(-15).ToOADate(); chartArea.AxisX.Maximum = tempEnd.ToOADate(); } } }
public static List <ApproachSplitFailAggregation> GetApproachAggregationRecords(Approach approach, SignalAggregationMetricOptions options) { var Repo = ApproachSplitFailAggregationRepositoryFactory.Create(); if (approach != null) { //List<ApproachSplitFailAggregation> aggregations = // Repo.GetApproachSplitFailAggregationByApproachIdAndDateRange( // approach.ApproachID, options.StartDate, options.EndDate); //return aggregations; } return(null); }