0

我第一次在 asp.net 网站中使用 c#,我正在其中创建图表。我创建了一个柱形图 - 2D,代码是这样的,

protected void chrtTickets_Load(object sender, EventArgs e)
        {
            using (SqlConnection connection = new SqlConnection(ConnectionString))
            {

                connection.Open();


                SqlCommand cmmd6 = new SqlCommand("getHowTicketsLoggedChart", connection);
                cmmd6.CommandType = CommandType.StoredProcedure;


                DataSet ds1 = new DataSet();

                SqlDataAdapter dad = new SqlDataAdapter(cmmd6);

                dad.Fill(ds1);

                chrtTickets.DataSource = ds1;


                chrtTickets.Series["Series1"].XValueMember = "MonYYYY";

                chrtTickets.Series["Series1"].YValueMembers = "aa";


                chrtTickets.DataBind();
                connection.Close();


            }
        }

但我有一个存储过程,它返回另一个字段“描述”以及 MonYYYy 和 aa,因为它们在 xaxis 和 yaxis 中使用。

但根据“描述”字段值说:电子邮件、电话、门户。我想根据每一行的描述值为每一列分配不同的颜色,如果它的电子邮件-> 红色等等。

谁能指导我完成这个?

我的意思是我的数据将是这样的:所以我不会提前知道颜色类型值是什么,这是我的存储过程从 db 返回给我的表值。

颜色类型| y 轴值 | x轴


电子邮件连接器| 24| 2011 年 12 月 电话 | 32 | 2011 年 12 月电子邮件连接器 |643 | 2012 年 1 月 内部 | 32 | 2012 年 1 月 电话 |455| 2012 年 1 月 门户 |2 | 2012年1月销售订单| 2| 2012 年 1 月

它冷是 5 种类型之一。电子邮件、门户网站,但许多 x 轴值。

数据点将不为人知。它们是动态的。

4

1 回答 1

1

你可以试试这个它应该随机选择下一个栏的颜色

Color[] colors = new Color[] { Color.Red, Color.Green, Color.Wheat, Color.Gray. Color.Black,  Color.Blue};
foreach (Series series in chrtTickets.Series)
{
    foreach (DataPoint point in series.Points)
    {
        Random random = new Random();
        int randomNumber = random.Next(0, 5);
        point.LabelBackColor = colors[ randomNumber];
    }
}

这是主要文章http://forums.asp.net/t/1652369.aspx/1

于 2012-05-23T06:22:57.193 回答