如何使用C#在x轴MSChart中设置值

前端之家收集整理的这篇文章主要介绍了如何使用C#在x轴MSChart中设置值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_403_0@
我有这些XY值:
  1. Series S1 = new Series()
  2. S1.Points.AddXY(9,25);
  3. S1.Points.AddXY(10,35);
  4. S1.Points.AddXY(11,15);
  5. chart1.Series.Add(S1);

但我需要在图中显示X值,如下所示:

X = “9-10”

X = “10-11”

X = “11-12”

我怎样才能做到这一点?

到目前为止,这是我发现的:

这是代码

  1. private void Form1_Shown(object sender,EventArgs e)
  2. {
  3. chart1.ChartAreas[0].AxisX.Minimum = 7;
  4. chart1.ChartAreas[0].AxisX.Maximum = 15;
  5.  
  6. Series S1 = new Series();
  7. S1.Points.AddXY(9,25);
  8. S1.Points.AddXY(10,35);
  9. S1.Points.AddXY(11,15);
  10. chart1.Series.Add(S1);
  11.  
  12. chart1.Series[0].Points[0].AxisLabel = "9-10";
  13. chart1.Series[0].Points[1].AxisLabel = "10-11";
  14. chart1.Series[0].Points[2].AxisLabel = "11-12";

你可以看到我使用数字,并为X轴标签设置文本,但我只能为DataPoints值做这些,我需要它用于整个值范围.

有什么想法吗?

解决方法

以下是sipla的答案:

使用自定义标签和Customize事件:

  1. string[] range = new string[10];
  2.  
  3. private void Form1_Shown(object sender,EventArgs e)
  4. {
  5. chart1.ChartAreas[0].AxisX.Minimum = 7;
  6. chart1.ChartAreas[0].AxisX.Maximum = 16;
  7.  
  8. range[0] = "";
  9. range[1] = "7-8";
  10. range[2] = "8-9";
  11. range[3] = "9-10";
  12. range[4] = "10-11";
  13. range[5] = "11-12";
  14. range[6] = "12-1";
  15. range[7] = "1-2";
  16. range[8] = "2-3";
  17. range[9] = "";
  18.  
  19. Series S1 = new Series();
  20. S1.Points.AddXY(9,15);
  21. chart1.Series.Add(S1);
  22.  
  23. }
  24.  
  25. int count;
  26. private void chart1_Customize(object sender,EventArgs e)
  27. {
  28. count = 0;
  29. foreach (CustomLabel lbl in chart1.ChartAreas[0].AxisX.CustomLabels)
  30. {
  31. lbl.Text = range[count];
  32. count++;
  33. }
  34. }

猜你在找的C#相关文章