簡體   English   中英

MS圖表Y軸從0小時開始不凝視[RangeBar]

[英]MS Chart Y Axis not staring from 0 Hours [RangeBar]

我正在使用Rangebar Mschart繪制一些數據。 Y軸表示時間(總計24小時)。 圖表正確繪制了數據,但是y軸不是從0小時開始。

在此處輸入圖片說明

 var IETable = (dt as System.ComponentModel.IListSource).GetList();
 chChart.DataBindCrossTable(IETable, "Number", "", "Start,Finish", "");

                  foreach (Series sr in chChart.Series)
                  {

                      sr.ChartType = SeriesChartType.RangeBar;
                      sr.YValueType = ChartValueType.Time;

                  }


                  chChart.ChartAreas[0].AxisY.LabelStyle.Format = "h : tt";
                  chChart.ChartAreas[0].AxisY.Interval = 2;
                  chChart.ChartAreas[0].AxisY.IntervalType = DateTimeIntervalType.Hours;
                  chChart.ChartAreas[0].AxisY.IntervalOffset = 0;
                  chChart.ChartAreas[0].AxisY.IsMarksNextToAxis = true;
                  chChart.ChartAreas[0].AxisY.IsStartedFromZero = true;


我還嘗試了AxisY.Minimum = 0和AxisY.Maximum = 1。 Y軸從0開始,但是看不到繪圖。

DateTime minDate = new DateTime(0, 0, 0, 0, 0, 0);
DateTime maxDate = minDate.AddHours(24);
chChart.ChartAreas[0].AxisY.Minimum = minDate.ToOADate();
chChart.ChartAreas[0].AxisY.Maximum = maxDate.ToOADate();

嘗試這個。 您可能需要更改新的DateTime(0,0,0,0,0,0); 以適合年份和月份等,當您添加內容時。 可能的解決方案是使用DateTime.Now獲取minDate並減去小時,分鍾和秒

將TextBox值轉換為datetime可以達到目的。

DateTime minDate =Convert.ToDateTime(tbDate.Text);
DateTime maxDate = minDate.AddDays(1);
chChart.ChartAreas[0].AxisY.Minimum = minDate.ToOADate();
chChart.ChartAreas[0].AxisY.Maximum = maxDate.ToOADate();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM