From bc0ed5b6cfda6c72c06f451b77da8518c41ab210 Mon Sep 17 00:00:00 2001 From: duheng <2286773002@qq.com> Date: 星期四, 20 三月 2025 16:16:03 +0800 Subject: [PATCH] Merge branch 'master' of http://47.103.154.90:83/r/HStation/XHS.V1.0 --- WinFrmUI/PBS.WinFrmUI.DataAnalysis/EnergyAnalysis.cs | 100 ++++++++++++++++++++++++++----------------------- 1 files changed, 53 insertions(+), 47 deletions(-) diff --git a/WinFrmUI/PBS.WinFrmUI.DataAnalysis/EnergyAnalysis.cs b/WinFrmUI/PBS.WinFrmUI.DataAnalysis/EnergyAnalysis.cs index d3959d0..f0adedd 100644 --- a/WinFrmUI/PBS.WinFrmUI.DataAnalysis/EnergyAnalysis.cs +++ b/WinFrmUI/PBS.WinFrmUI.DataAnalysis/EnergyAnalysis.cs @@ -1,4 +1,5 @@ -锘縰sing DevExpress.Utils; +锘縰sing DevExpress.Mvvm.POCO; +using DevExpress.Utils; using DevExpress.XtraCharts; using DevExpress.XtraGrid.Columns; using DevExpress.XtraGrid.Views.Grid; @@ -39,7 +40,7 @@ private AxisX _axis_x_flow; private AxisY _axis_y_head; - //private SecondaryAxisY _axis_y_eff; + private SecondaryAxisY _axis_y_eff; #endregion @@ -59,18 +60,18 @@ _diagram.EnableAxisYZooming = true; _default_pane = _diagram.DefaultPane; - _diagram.AxisX.TimeSpanScaleOptions.MeasureUnit = TimeSpanMeasureUnit.Minute; - _diagram.AxisX.TimeSpanScaleOptions.ScaleMode = ScaleMode.Continuous; + _diagram.AxisX.DateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Second; + _diagram.AxisX.DateTimeScaleOptions.ScaleMode = ScaleMode.Continuous; _axis_x_flow = _diagram.AxisX; _axis_y_head = _diagram.AxisY; - //_axis_y_eff = _diagram.SecondaryAxesY.GetAxisByName("AxisYEff"); - //_axis_y_eff.Alignment = AxisAlignment.Far; + _axis_y_eff = _diagram.SecondaryAxesY.GetAxisByName("AxisYEff"); + _axis_y_eff.Alignment = AxisAlignment.Far; _axis_x_flow.GridLines.Visible = false; _axis_y_head.GridLines.Visible = false; - //_axis_y_eff.GridLines.Visible = false; + _axis_y_eff.GridLines.Visible = false; this.chartControl1.CrosshairEnabled = DefaultBoolean.True; @@ -113,20 +114,19 @@ foreach (var vm in vm_list) { - //if (!vm.Name.Contains("鍘嬪姏")) - //{ - axis_x = _axis_x_flow; - axis_y = _axis_y_head; - pane = _default_pane; - //} - //else - //{ - // axis_x = _axis_x_flow; - // axis_y = _axis_y_eff; - // pane = _default_pane; + if (!vm.Name.Contains("鍘嬪姏")) + { + axis_x = _axis_x_flow; + axis_y = _axis_y_head; + pane = _default_pane; + } + else + { + axis_x = _axis_x_flow; + axis_y = _axis_y_eff; + pane = _default_pane; - //} - + } var col = new GridColumn(); col.FieldName = vm.Name; col.Caption = vm.Name; @@ -136,8 +136,16 @@ AddLineSeries(vm.Name, axis_x, axis_y, pane, vm.Datas); } - var min_x = vm_list.SelectMany(x => x.Datas).Min(x => TimeSpan.Parse(x.Time)); - var max_x = vm_list.SelectMany(x => x.Datas).Max(x => TimeSpan.Parse(x.Time)); + var tempdatas = vm_list[0]; + foreach (var item in tempdatas.Datas) + { + item.Y = Press; + } + + AddLineSeries("鍘熸车鍚庡帇鍔�", axis_x, _axis_y_eff, _default_pane, tempdatas.Datas); + + var min_x = vm_list.SelectMany(x => x.Datas).Min(x => DateTime.Parse(x.Time)); + var max_x = vm_list.SelectMany(x => x.Datas).Max(x => DateTime.Parse(x.Time)); _axis_x_flow.NumericScaleOptions.AutoGrid = false; @@ -146,8 +154,9 @@ _axis_x_flow.WholeRange.SetMinMaxValues(min_x, max_x); _axis_x_flow.VisualRange.SetMinMaxValues(min_x, max_x); + var diff_days = max_x - min_x; + textEdit1.Text = diff_days.TotalDays.ToString(); gridControl1.DataSource = dataTable; - this.chartControl1.EndInit(); } @@ -183,16 +192,17 @@ view.Pane = pane; - var series_pt_list = pt_list.Select(x => new SeriesPoint(TimeSpan.Parse(x.Time), x.Y)).ToArray(); + var series_pt_list = pt_list.Select(x => new SeriesPoint(DateTime.Parse(x.Time), x.Y)).ToArray(); var series = new DevExpress.XtraCharts.Series(); series.Tag = id; //series.ShowInLegend = false; series.Name = id; - series.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.TimeSpan; - series.TimeSpanSummaryOptions.MeasureUnit = TimeSpanMeasureUnit.Minute; + series.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.DateTime; + series.DateTimeSummaryOptions.MeasureUnit = DateTimeMeasureUnit.Second; + series.LabelsVisibility = DevExpress.Utils.DefaultBoolean.False; series.CrosshairEnabled = DefaultBoolean.True; - series.CrosshairLabelPattern = id + ":{V:N2}"; + series.CrosshairLabelPattern = id + ":{V:N2} {A:yyyy-MM-dd HH:mm:ss}"; series.ToolTipEnabled = DefaultBoolean.False; series.SeriesPointsSorting = SortingMode.None; series.Visible = true; @@ -205,7 +215,6 @@ { datalist = new List<FlowPressChartViewModel>(); dataTable = new DataTable(); - if (!File.Exists(fileName)) return "鏂囦欢涓嶅瓨鍦�"; int line = 0; @@ -274,57 +283,54 @@ { row_temp = sheet1.GetRow(line); - if (row_temp == null || row_temp.Cells.Count < 3) + if (row_temp == null) break; var rowData = new object[totalcell]; for (int i = 0; i < totalcell; i++) { try { - var cell_temp = row_temp.GetCell(i); - if (i > 0) { - if (cell_temp != null && cell_temp.CellType != NPOI.SS.UserModel.CellType.Blank) + var cell_temp = row_temp.GetCell(i); + double yvalue = cell_temp.NumericCellValue; + var timevalue = row_temp.GetCell(0).StringCellValue; + datalist[i - 1].Datas.Add(new TimeChartViewModel() { - double yvalue = cell_temp.NumericCellValue; - var timevalue = row_temp.GetCell(0).NumericCellValue; - //double.TryParse(cell_temp.StringCellValue,out yvalue); - datalist[i - 1].Datas.Add(new TimeChartViewModel() - { - Time = DateTime.FromOADate(timevalue).ToString("HH:mm:ss"), - Y = yvalue, - }); - rowData[i] = yvalue; - } + Time = timevalue, //DateTime.FromOADate(timevalue).ToString("YYYY-MM-dd HH:mm:ss"), + Y = yvalue, + }); + rowData[i] = yvalue; } else { - var timevalue = row_temp.GetCell(0).NumericCellValue; - rowData[i] = DateTime.FromOADate(timevalue).ToString("HH:mm:ss"); + var timevalue = row_temp.GetCell(0).StringCellValue; + rowData[i] = timevalue;//DateTime.FromOADate(timevalue).ToString("YYYY-MM-dd HH:mm:ss"); } } catch (Exception ex) { - var a = ex.Message; + //var a = ex.Message; } } dataTable.Rows.Add(rowData); } + //Yw.Pump.CalculationHelper.CalcuP(); + return ""; } - + double Press = 0.6; private void barButtonItem2_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { var dlg = new SetPressForm(); if (dlg.ShowDialog() == DialogResult.OK) { - var press= dlg.Press; + Press = dlg.Press; } } } -- Gitblit v1.9.3