首页 新闻 搜索 专区 学院

DevExpress的WebChartControl控件绘制图表,要求每个柱体的颜色都自定义

0
悬赏园豆:20 [已关闭问题] 关闭于 2016-01-05 22:20
 1             if (dt!= null && dt.Rows.Count > 0)
 2             {
 3                 this.WebChartControl2.Series.Clear();
 4                 this.WebChartControl2.Titles.Clear();
 5 
 6                 //set chart title
 7                 SetChartTitle(this.WebChartControl2, true, "Titile", true, 2, StringAlignment.Center, ChartTitleDockStyle.Top, true, new Font("Arial", 12, FontStyle.Bold), Color.Black, 10);
 8 
 9                 Series seriesOnand = new Series("", ViewType.Bar);
10                 seriesOnand.DataSource = dtOnHand;
11                 seriesOnand.ArgumentDataMember = dt.PublicDataListFields.GroupColumn.ToString();
12                 seriesOnand.ValueDataMembers[0] = dt.PublicDataListFields.Count.ToString();
13 
14                 this.WebChartControl2.Series.Add(seriesOnand);
15 
16                 //set AxisX
17                 SetAxisX(this.WebChartControl2, true, StringAlignment.Center, "Days", Color.Black, true, new Font("Arial", 10, FontStyle.Bold));
18                 SetAxisY(this.WebChartControl2, true, StringAlignment.Center, "Inq Qty", Color.Black, true, new Font("Arial", 10, FontStyle.Bold));
19 
20                 string[] colorArray = { "#00FF00", "#00FF00", "#FFCC00", "#FF0000" };
21                 int i = 0;
22                 foreach (Series s in this.WebChartControl2.Series)
23                 {
24                     if (s.View.ToString() == "Bar")
25                     {
26                         BarSeriesView barView = (BarSeriesView)s.View;
27 
28                         barView.Color = System.Drawing.ColorTranslator.FromHtml(colorArray[i]);
29 
30 
31                     }
32                     i++;
33 
34                     if (i >= 4)
35                         i = 0;
36                 }
37             }

我的目的是希望每一个柱体都显示不同的颜色,但是执行以上代码后,得到的效果却是下图所示:

 

求教:如何才能实现每个柱体都能显示不同的颜色,类似于下图这样的:

 

谢谢!

期星揽月的主页 期星揽月 | 初学一级 | 园豆:22
提问于:2014-11-28 17:00
< >
分享
所有回答(3)
0

试试设置一下属性

WebChartControl2.PaletteBaseColorNumber =0 

barView.ColorEach=true;

Yu | 园豆:12944 (专家六级) | 2014-11-28 22:07

这个你有用过吗?那如果每一个柱体设置一种颜色呢,怎么来设置?

支持(0) 反对(0) 期星揽月 | 园豆:22 (初学一级) | 2014-11-29 15:54

@期星揽月: 你这个例子,我具体没用过,大概方向是这样,可以去官方网查阅

支持(0) 反对(0) Yu | 园豆:12944 (专家六级) | 2014-11-29 16:23

谢谢,谢谢,多谢啦!帮了大忙啦!

支持(0) 反对(0) 猫公爵 | 园豆:202 (菜鸟二级) | 2016-05-30 14:06

@猫公爵: 设置view属性中的ColorEach为true即可实现

支持(0) 反对(0) chenyaowu | 园豆:202 (菜鸟二级) | 2019-05-23 17:05
0

你只能自己调试跟踪一下代码,然后再去设置一下。应该问题不大,debug一下

Mr.Brian | 园豆:1518 (小虾三级) | 2014-11-29 11:01

Series这个对象包含了所有的柱体,调试的时候只能拿到Series对象,拿不到柱体的对象,所以不知如何设置。

支持(0) 反对(0) 期星揽月 | 园豆:22 (初学一级) | 2014-11-29 15:53
0

设置view属性中的ColorEach为true即可实现

chenyaowu | 园豆:202 (菜鸟二级) | 2019-05-23 16:41
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册