Alice 发表于 2016-10-26 14:48:27

使用的是C1Chart,设置类型ChartType是Column3D来实现你的需求。
按照你给的需求,我做了个Demo,来演示3D柱状图的动态效果。
Demo如下:

zlslky 发表于 2016-10-26 16:14:34

本帖最后由 zlslky 于 2016-10-26 16:37 编辑

Alice 发表于 2016-10-26 14:48
使用的是C1Chart,设置类型ChartType是Column3D来实现你的需求。
按照你给的需求,我做了个Demo,来演示3D ...
感谢您的DEMO,还有以下问题麻烦请教下:
1、如何根据Y轴数值的大小设置柱子不同颜色显示?
2、如何改变柱子的宽度?3、最小值设置为-80,最大值设置为0后柱状图倒过来了(如图),怎样让柱子倒过来从-80开始?
4、在绑定40个柱状图显示的时候会很卡,在大数据量绑定下有什么方法可以提高效率?


Alice 发表于 2016-10-26 18:38:55

zlslky 发表于 2016-10-26 16:14
感谢您的DEMO,还有以下问题麻烦请教下:
1、如何根据Y轴数值的大小设置柱子不同颜色显示?
2、如何改 ...

1.在5楼的博客已经给了详细的设置步骤和代码。
每个序列都有PlotElementLoaded事件,在这个事件里是可以拿到每个柱子的,你就可以判断值满足要求的时候,改变颜色。
拿我给的示例举例:
值大于3.0的时候,颜色变成红色,代码参考:
void _ds1_PlotElementLoaded(object sender, EventArgs e)
      {
            var pe = (PlotElement)sender;
            var dp = pe.DataPoint;
            if (!(pe is Lines) &&dp.Value>3.0) // skip connecting lines
            {
                // fill the symbol with a color calculated from the data value
                pe.Fill = Brushes.Red;
            }
      }
2.默认是根据可显示区域自动计算。
调整3D的宽度需要使用WPF中的旋转进行修改,您具体是想调整大还是小?
3.主要利用的是WPF中的旋转,进行轴或是柱状的旋转,之前给的博客里有介绍。
4.绑定的性能问题在我提供的Demo里能重现不?

zlslky 发表于 2016-10-27 09:43:56

Alice 发表于 2016-10-26 18:38
1.在5楼的博客已经给了详细的设置步骤和代码。
每个序列都有PlotElementLoaded事件,在这个事件里是可以 ...

问题2:是宽度要调大;
问题4:在DEMO里将DataSeries改为50个一次显示50个数据,看看效率如何

Alice 发表于 2016-10-27 17:34:16

zlslky 发表于 2016-10-27 09:43
问题2:是宽度要调大;
问题4:在DEMO里将DataSeries改为50个一次显示50个数据,看看效率如何

2.这个需要验证,验证后给你反馈。
4.在Demo里DataSeries改为一次显示50个数据,没有重现您说的效率问题。

zlslky 发表于 2016-10-27 18:05:11

Alice 发表于 2016-10-27 17:34
2.这个需要验证,验证后给你反馈。
4.在Demo里DataSeries改为一次显示50个数据,没有重现您说的效率问题 ...

是将Demo里DataSeries的数量设置为50

Alice 发表于 2016-10-28 13:47:19

zlslky 发表于 2016-10-27 18:05
是将Demo里DataSeries的数量设置为50

测试是将DataSeries的数量设置为50,没有重现效率的问题。
有什么重现的必然步骤么
页: 1 [2]
查看完整版本: chart柱状图问题如图