首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用MSChart在x轴C#中设置值

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

Stack Overflow用户
提问于 2011-07-08 11:56:16
回答 2查看 38.3K关注 0票数 7

我有以下XY值:

代码语言:javascript
运行
复制
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“

我怎样才能做到这一点?

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

这是密码:

代码语言:javascript
运行
复制
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值设置文本,我需要它来处理整个范围的值。

有什么想法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-07-13 13:48:44

感谢西普拉,以下是答案:

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

代码语言:javascript
运行
复制
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, 25);
        S1.Points.AddXY(10, 35);
        S1.Points.AddXY(11, 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++;
        }                        
    }

票数 7
EN

Stack Overflow用户

发布于 2017-03-16 03:38:17

很想知道为什么你的靶场会像那样散开。在定义和初始化数组时,将数组放在括号中会更干净。例如:

代码语言:javascript
运行
复制
string[] range = new string[10] {"","7-8","8-9","9-10","10-11","11-12","12-1","1-2","2-3",""};
/*
  The tenth element is also likely unnecessary 
  as it simply repeats the first     
  element of the array
*/
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6624066

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档