public int Compare(TrackGroup x, TrackGroup y) { SeriesGroup variableDataX = x.ConsolidatedTrack.GetDataSeries(m_varName, m_orderByReportType); if (variableDataX == null) { return(-1); } SeriesGroup variableDataY = y.ConsolidatedTrack.GetDataSeries(m_varName, m_orderByReportType); if (variableDataY == null) { return(1); } if (!m_bUseBeauty) { if ((m_bAsc && variableDataX.MainSeries.Stats.avg >= variableDataY.MainSeries.Stats.avg) || (!m_bAsc && variableDataX.MainSeries.Stats.avg <= variableDataY.MainSeries.Stats.avg)) { return(1); } return(-1); } else { if ((m_bAsc && variableDataX.MainSeries.Stats.ascBeauty <= variableDataY.MainSeries.Stats.ascBeauty) || (!m_bAsc && variableDataX.MainSeries.Stats.dscBeauty <= variableDataY.MainSeries.Stats.dscBeauty)) { return(1); } return(-1); } }
public void SetData(SeriesGroup group, SeriesData data) { this.groupDataGrid.SetData(group, data); this.groupGraph.SetData(group, data); this.Text = group.GroupName; this.Name = "GROUP " + group.GroupName; }
public void SetData(SeriesGroup group, SeriesData data) { this.group = group; this.data = data; foreach (SeriesVariable var in this.group.GroupList) { var.SeriesValues.Changed += new ChangedEventHandler(SeriesValues_Changed); } this.update(); }
public void SetGroup(SeriesGroup group) { this.group = group; this.txtName.Text = group.GroupName; foreach (SeriesVariable item in this.sourceVariables) { if (group.GroupList.Contains(item)) { lstVariables.SelectedItems.Add(item); } } }
public ReportViewModel(List <TrackGroup> queryResultTracks, LogQueryViewModel query, Report report) { Name = report.Name; //Create the plot PlotViewModel newPlot = new PlotViewModel(report.Name, "Time (s)", report.Name, false, true); //Create the stats StatsViewModel newStatGroup = new StatsViewModel(report.Name); foreach (TrackGroup group in queryResultTracks) { //plot data if (group.ConsolidatedTrack != null) { SeriesGroup seriesGroup = group.ConsolidatedTrack.SeriesGroups[report]; foreach (Series series in seriesGroup.SeriesList) { string seriesName; string description; if (seriesGroup.SeriesList.Count == 1) { //only one series per track group, no multi-series track group seriesName = group.ConsolidatedTrack.TrackId; description = group.ConsolidatedTrack.FullTrackId; } else { seriesName = group.ConsolidatedTrack.TrackId + "-" + series.Id; description = group.ConsolidatedTrack.FullTrackId + "-" + series.Id; } //add data to the plot int lineSeriesId = newPlot.AddLineSeries(seriesName, description); foreach (XYValue value in series.Values) { newPlot.AddLineSeriesValue(lineSeriesId, value.X, value.Y); } StatViewModel newStat = new StatViewModel(group.ExperimentId, seriesName, series.Stats , group.ConsolidatedTrack.LogBinaryFile , group.ConsolidatedTrack.LogDescriptorFile , group.ConsolidatedTrack.ExperimentalUnitConfigFile); newStatGroup.addStat(newStat); } } } Plot = newPlot; Stats = newStatGroup; }
public ReportViewModel(List <TrackGroup> queryResultTracks, LogQueryViewModel query, Report report) { Name = report.Name; //Create the plot PlotViewModel newPlot = new PlotViewModel(report.Name, "Time (s)", report.Name, false, true); if (!query.AverageSelectedTracks) { //Create the stats StatsViewModel newStatGroup = new StatsViewModel(report.Name); //Regular line series foreach (TrackGroup group in queryResultTracks) { if (group.ConsolidatedTrack != null) { SeriesGroup seriesGroup = group.ConsolidatedTrack.SeriesGroups[report]; foreach (Series series in seriesGroup.SeriesList) { string seriesName; string description; if (seriesGroup.SeriesList.Count == 1) { //only one series per track group, no multi-series track group seriesName = group.ConsolidatedTrack.TrackId; description = group.ConsolidatedTrack.FullTrackId; } else { seriesName = group.ConsolidatedTrack.TrackId + "-" + series.Id; description = group.ConsolidatedTrack.FullTrackId + "-" + series.Id; } //add data to the plot int lineSeriesId = newPlot.AddLineSeries(seriesName, description); //force resampling if point count is over 100 if (series.Values.Count > 100) { series.Resample(100); } foreach (XYValue value in series.Values) { newPlot.AddLineSeriesValue(lineSeriesId, value.X, value.Y); } StatViewModel newStat = new StatViewModel(group.ExperimentId, seriesName, series.Stats , group.ConsolidatedTrack.LogBinaryFile , group.ConsolidatedTrack.LogDescriptorFile , group.ConsolidatedTrack.ExperimentalUnitConfigFile); newStatGroup.addStat(newStat); } } } Stats = newStatGroup; } else { List <Series> originalSeries = new List <Series>(); foreach (TrackGroup group in queryResultTracks) { //Averaged line series: we need to average all the track groups SeriesGroup seriesGroup = group.ConsolidatedTrack.SeriesGroups[report]; //take the first series originalSeries.Add(seriesGroup.SeriesList[0]); } Series.AverageSeriesList(originalSeries, out Series averages, out Series minimums, out Series maximums); //only one series per track group, no multi-series track group string seriesName = "Averaged series"; string description = "Averaged series"; //add a line series to the plot int lineSeriesId = newPlot.AddLineSeries(seriesName, description); int areaSeriesId = newPlot.AddAreaSeries(seriesName, description); //all three output series must have the same number of elements int sampleCount = averages.Values.Count; for (int sample = 0; sample < sampleCount; sample++) { newPlot.AddLineSeriesValue(lineSeriesId, averages.Values[sample].X, averages.Values[sample].Y); newPlot.AddAreaSeriesValue(areaSeriesId, averages.Values[sample].X, minimums.Values[sample].Y, maximums.Values[sample].Y); } } Plot = newPlot; }
public void SetGroup(SeriesGroup group) { this.Text = "Duplicate Group : " + group.GroupName; this.lblName.Text = "New Group Name"; }