2017-02-24 31 views
0

我有对齐列的问题。 ,这里的问题:C#图表列对齐

enter image description here

我想这样的定位。

enter image description here

代码这里:

chart1.ChartAreas[0].AxisX.MajorGrid.LineWidth = 0; 
    chart1.ChartAreas[0].AxisY.MajorGrid.LineWidth = 0; 
    chart1.ChartAreas[0].Position.Auto = false; 
    chart1.ChartAreas[0].Position.X = 0; 
    chart1.ChartAreas[0].Position.Y = 0; 
    chart1.ChartAreas[0].Position.Height = 90; 
    chart1.ChartAreas[0].Position.Width = 90; 
    chart1.ChartAreas[0].AlignmentStyle = AreaAlignmentStyles.All; 
    chart1.ChartAreas[0].AlignmentOrientation = AreaAlignmentOrientations.All; 
for (int i = 2002;i<2017;i++) 
     { 
      if (con.State == ConnectionState.Open) 
      { 
       con.Close(); 
      } 
      con.Open(); 
      OleDbCommand komut = new OleDbCommand("SELECT COUNT(No) AS Sayı FROM [main$] WHERE [Yil]="+i+"", con); 
      komut.Connection = con; 
      OleDbDataReader dr = komut.ExecuteReader(); 
      if (dr.Read()) 
      { 
       chart1.Series.Add(dr["Sayı"].ToString()); 
       chart1.Series[dr["Sayı"].ToString()].Points.AddXY(i, float.Parse(dr["Sayı"].ToString())); 
       chart1.Series[i2].Color = Color.Black; 
       chart1.Series[i2]["PixelPointWidth"] = "100"; 
       chart1.Series[i2].IsVisibleInLegend = false; 
       chart1.ChartAreas[0].AxisX.LabelStyle.Format = "####" + ((char)160) + "\n"; 
       chart1.ChartAreas[0].AxisY.LabelStyle.Format = "####" + ((char)160) + "\n";   
       i2 += 1; 
      } 
     } 
+3

显示你的代码,你做了什么。 –

+0

看起来您无法将数据添加到其他系列。即使某些数据丢失,列总是围绕它们的常用x值进行集中! - 和:为什么在阅读器循环中不断添加越来越多的系列?你很可能应该只添加数据点到__one和同一系列___,不是? – TaW

+0

我想要那样的图表:https://i.stack.imgur.com/yEZZt.png –

回答

-1

谢谢@TaW
解决方案:

while (dr.Read()) 
{ 
    chart1.Series["Series1"].Points.AddXY(i,float.Parse(dr["Sayi"].ToString())); 
} 
+0

请将该代码添加到问题的顶部!这不是一个答案! – TaW