zoukankan      html  css  js  c++  java
  • 图形组件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<i&&i<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();

    html

    <asp:Chart ID="Chart1" runat="server" DataMember="DefaultView" Height="700px" Width="800px">
            <Legends>
                <asp:Legend Docking="Top" Name="Default" BackColor="Transparent" Font="Trebuchet MS, 8pt, style=Bold">
                </asp:Legend>
            </Legends>
            <Series>
            </Series>
            <ChartAreas>
                <asp:ChartArea Name="ChartArea1" IsSameFontSizeForAllAxes="True">
                    <AxisX LabelAutoFitMaxFontSize="8" LabelAutoFitMinFontSize="5" IsReversed="True">
                        <LabelStyle Font="Microsoft Sans Serif, 8pt" Interval="1" IntervalType="Auto" />
                        <ScaleBreakStyle CollapsibleSpaceThreshold="10" LineColor="Transparent" BreakLineStyle="None" />
                        <MinorGrid Interval="1" IntervalOffset="1" Enabled="False" />
                        <MajorGrid Interval="Auto" Enabled="False" />
                        <MajorTickMark Interval="Auto" Enabled="False" />
                        <MinorTickMark Interval="1" Enabled="False" />
                    </AxisX>
                    <AxisY LabelAutoFitMaxFontSize="8" LabelAutoFitMinFontSize="5">
                        <LabelStyle Interval="Auto" IntervalType="Auto" />
                    </AxisY>
                    <AxisX2 LabelAutoFitMaxFontSize="8" LabelAutoFitMinFontSize="5">
                        <MinorGrid Interval="1" IntervalOffset="1" Enabled="False" />
                        <MajorGrid Interval="Auto" />
                        <MajorTickMark Interval="Auto" />
                        <MinorTickMark Interval="1" Enabled="True" />
                        <LabelStyle Font="Microsoft Sans Serif, 8pt" />
                    </AxisX2>
                    <AxisY2 LabelAutoFitMaxFontSize="8" LabelAutoFitMinFontSize="5">
                        <LabelStyle Font="Microsoft Sans Serif, 7pt" />
                        <MajorGrid Enabled="False" />
                    </AxisY2>
                </asp:ChartArea>
            </ChartAreas>
        </asp:Chart>
  • 相关阅读:
    下载文档时Safari浏览器下载后出现".html"问题
    实体框架(Entity Frmaework)简介
    系统内置委托:Func/Action
    lambda表达式不使用委托(delegate) 用FUNC
    lambda表达式
    C#生成缩略图 (通用模式)
    从底层角度看ASP.NET-A low-level Look at the ASP.NET...
    网站前端优化
    HTTP协议
    什么是AJAX? AJAX:”Asynchronous JavaScript and XML”中文意思:异步JavaScript和XML。
  • 原文地址:https://www.cnblogs.com/fuge/p/2716714.html
Copyright © 2011-2022 走看看