首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >按名称在asp.net饼图中设置颜色

按名称在asp.net饼图中设置颜色
EN

Stack Overflow用户
提问于 2011-10-10 20:18:28
回答 1查看 7K关注 0票数 4

我有一个图表控制,以衡量客户的满意度。

可能的价值观是快乐的、中立的和悲伤的。(例如,一组可能的值可以是:快乐(23),中立(12),悲伤(19) )

我希望快乐永远是绿色的,中立的永远是橙色的,悲伤的永远是红色的(比如像一块破布一样)

我把颜色设置如下:

fbChart.Palette = ChartColorPalette.None;

fbChart.PaletteCustomColors =新Color[] { Color.Green,Color.Orange,Color.Red };

如果所有三种可能的选项都有值,这是很好的,但是如果只有一两个值,颜色就会变糟。(例如,如果我有“快乐”(12)和“悲伤”(9),但没有中立,颜色就会变成“绿色”代表“快乐”,“橙色”代表“悲伤”。)

有没有办法把颜色和名字绑在一起(例如快乐/中性/悲伤)?

编辑:

数据从datatable加载到图表中:

代码语言:javascript
复制
    var fb = from f in db.tl_feedbacks
             where f.timestamp >= new DateTime(fromYear, fromMonth, fromDay, 0, 0, 0) &&                f.timestamp <= new DateTime(toYear, toMonth, toDay, 23, 59, 59)  
               group f by f.tl_feedback_score.score into grp
               select new
               {
                     Score = CultureInfo.CurrentCulture.TextInfo.ToTitleCase(grp.Key),  
                     Count = grp.Select(x => x.tl_feedback_score.score).Count()  
               };  
              fbChart.Series["Feedback"].XValueMember = "Score";  
              fbChart.Series["Feedback"].YValueMembers = "Count";

              fbChart.DataSource = fb;
              fbChart.DataBind();
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-10-10 20:34:43

我假设您使用datatable将数据绑定到图表,并且使用asp.net图表控件.

我希望这个解决方案能帮助你

代码语言:javascript
复制
foreach (Series charts in fbchart.Series)
{
    foreach (DataPoint point in charts.Points)
    {
       switch (point.AxisLabel)
        {
           case "Neutral": point.Color = Color.Red; break;
           case "Happy": point.Color = Color.Green; break;
           case "Sad": point.Color = Color.Orange; break;
         }
         point.Label = string.Format("{0:0} - {1}", point.YValues[0], point.AxisLabel);

    }
 }  

上面代码的示例图像(图表)类似于this...Below

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7718180

复制
相关文章

相似问题

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