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

我有这些XY值:
Series S1 = new Series()
S1.Points.AddXY(9,25);
S1.Points.AddXY(10,35);
S1.Points.AddXY(11,15);
chart1.Series.Add(S1);

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

X = “9-10”

X = “10-11”

X = “11-12”

我怎样才能做到这一点?

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

这是代码

private void Form1_Shown(object sender,EventArgs e)
    {
        chart1.ChartAreas[0].AxisX.Minimum = 7;
        chart1.ChartAreas[0].AxisX.Maximum = 15;

        Series S1 = new Series();
        S1.Points.AddXY(9,25);
        S1.Points.AddXY(10,35);
        S1.Points.AddXY(11,15);
        chart1.Series.Add(S1);

        chart1.Series[0].Points[0].AxisLabel = "9-10";
        chart1.Series[0].Points[1].AxisLabel = "10-11";
        chart1.Series[0].Points[2].AxisLabel = "11-12";

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

有什么想法吗?

解决方法

以下是sipla的答案:

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

string[] range = new string[10];

    private void Form1_Shown(object sender,EventArgs e)
    {
        chart1.ChartAreas[0].AxisX.Minimum = 7;
        chart1.ChartAreas[0].AxisX.Maximum = 16;

        range[0] = "";
        range[1] = "7-8";
        range[2] = "8-9";
        range[3] = "9-10";
        range[4] = "10-11";
        range[5] = "11-12";
        range[6] = "12-1";
        range[7] = "1-2";
        range[8] = "2-3";
        range[9] = "";

        Series S1 = new Series();            
        S1.Points.AddXY(9,15);
        chart1.Series.Add(S1);            

    }

    int count;
    private void chart1_Customize(object sender,EventArgs e)
    {
        count = 0;
        foreach (CustomLabel lbl in chart1.ChartAreas[0].AxisX.CustomLabels)
        {
            lbl.Text = range[count];
            count++;
        }                        
    }

相关文章

在要实现单例模式的类当中添加如下代码:实例化的时候:frmC...
1、如果制作圆角窗体,窗体先继承DOTNETBAR的:public parti...
根据网上资料,自己很粗略的实现了一个winform搜索提示,但是...
近期在做DSOFramer这个控件,打算自己弄一个自定义控件来封装...
今天玩了一把WMI,查询了一下电脑的硬件信息,感觉很多代码都...
最近在研究WinWordControl这个控件,因为上级要求在系统里,...