2012-03-04 53 views
1

我有一個雙贏形成圖表控件與RangeBar類型的圖表,我添加系列和數據點如下:MSChart WinForms圖表控件:如何在RangeBar圖表上將DataPoints與系列標籤對齊?

public void AddSeries(List<Machine> machines) 
    { 
     string mID=""; 
     chart.ChartAreas[0].AxisX.Minimum =0; 
     chart.ChartAreas[0].AxisX.Maximum =machines.Count+1;   
     int x = 1; 
     foreach (var m in machines) 
     { 
      if (x < 4) 
      { 
       mID = m.idMachine.ToString(); 
       chart.Series.Add(new Series(mID)); 
       chart.Series[mID].YValuesPerPoint = 2; 
       chart.Series[mID].Color = Color.Magenta; 
       chart.Series[mID].ChartType = SeriesChartType.RangeBar; 
       chart.Series[mID]["PointWidth"] = "0.7"; 
       chart.Series[mID].IsVisibleInLegend = false; 
       chart.Series[mID].AxisLabel = m.MachineNo + "_" + m.idMachine; 
       chart.Series[mID]["DrawSideBySide"] = "true";    

       DateTime dt = new DateTime(2010, 1, 6); 
       chart.Series[mID].Points.AddXY(x, dt.ToOADate(), dt.AddDays(1).ToOADate()); 
      } 
      x++; 
     } 
    } 

然後我圖如下所示:

enter image description here

我要的是與P02_68系列一樣,系列P01_67和P03_69的數據點能夠正確對齊(在系列線的中間)。任何想法我可以做到這一點?謝謝!

回答

0

如果你希望他們對準你需要通過網站來設置該屬性

chart.Series[mID]["DrawSideBySide"] = "false"; 

但隨後你的系列將無法繪製側,將重疊 或者你可以嘗試從圖表中刪除空系列。 (然後,你將需要採取的標籤的保健)

如: -

Check Here for more information