加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

C#chart绘折线图动态添加数据

(2019-04-15 15:03:27)
分类: C#

图形组件Chart动态添加Series

Chart1.DataSource = dtb;
            string[] strcolor = new string[20];
            strcolor[0] = "220, 224, 64, 10";
            strcolor[1] = "220, 252, 180, 65";
            strcolor[2] = "220, 159, 100, 100";
            strcolor[3] = "220, 5, 100, 146";
            strcolor[4] = "91,42,0";
            strcolor[5] = "19,211,188";
            strcolor[6] = "0,93,70";
            strcolor[7] = "185,147,240";
            strcolor[8] = "194,211,252";
            strcolor[9] = "49,0,93";
            strcolor[10] = "245,111,5";
            strcolor[11] = "203,72,178";
            strcolor[12] = "93,93,0";
            strcolor[13] = "165,165,147";
            strcolor[14] = "124,201,15";
            strcolor[15] = "14,112,201";
            strcolor[16] = "0,59,93";
            strcolor[17] = "5,18,108";
            strcolor[18] = "245,15,54";
            strcolor[19] = "121,129,234";
            Chart1.Series.Clear();
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                Chart1.Series.Add(i.ToString());//添加
                Chart1.Series[i.ToString()].ChartType = SeriesChartType.StackedBar;
                Chart1.Series[i.ToString()].IsXValueIndexed = true;
                Chart1.Series[i.ToString()].XValueMember = "Customer";
                Chart1.Series[i.ToString()].YValueMembers = "StickCarQutity" + (i + 1);
                Chart1.Series[i.ToString()].LegendText = dt.Rows[i]["level"].ToString();
                Chart1.Series[i.ToString()].BorderColor = Color.FromArgb(180, 26, 59, 105);
                Chart1.Series[i.ToString()].IsValueShownAsLabel = true;
                if (i < 4)
                {
                    string[] number = strcolor[i].ToString().Split(new Char[] { ',' });
                    int alpha = int.Parse(number[0].ToString());
                    int red = int.Parse(number[1].ToString());
                    int green = int.Parse(number[2].ToString());
                    int blue = int.Parse(number[3].ToString());
                    Chart1.Series[i.ToString()].Color = Color.FromArgb(alpha, red, green, blue);//颜色赋值
                }
                else
                {
                    if(3<20)
                    {
                        string[] number = strcolor[i].ToString().Split(new Char[] { ',' });
                        int red = int.Parse(number[0].ToString());
                        int green = int.Parse(number[1].ToString());
                        int blue = int.Parse(number[2].ToString());
                        Chart1.Series[i.ToString()].Color = Color.FromArgb(red, green, blue);
                    }
                    else
                    {
                   
                    }
                }
            }
            Chart1.DataBind();

C#chart绘折线图动态添加数据

C#入门基础,实现chart控件动态添加数据

源程序https://download.csdn.net/download/qq_42237381/10742048

最终程序运行效果如图

点击开始,将随机生成的两组数据添加进折线图里,chart1和chart2 只显示10个数,超过10个数将第一个传进来的数删掉

chart3是将chart1和chart2 的所有数据显示,两条不同的Y轴。

勾选框可以选择chart只显示其中一条线

关键点。使用timer定时器生成随机数,调用方法类

https://blog.csdn.net/qq_42237381/article/details/83348833
---------------------
作者:渡之
来源:CSDN
原文:https://blog.csdn.net/qq_42237381/article/details/83348833
版权声明:本文为博主原创文章,转载请附上博文链接!

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有