找回密码
 立即注册

QQ登录

只需一步,快速开始

fengzhiyi

社区贡献组

11

主题

23

帖子

90

积分

社区贡献组

积分
90

微信认证勋章

fengzhiyi
社区贡献组   /  发表于:2016-12-6 10:15  /   查看:4247  /  回复:6
近期在测试flexChart的性能。
  需求有2个: 1、实现RangeSelector,即范围选择。同时flexChart还要有缩放功能,那么这个时候缩放比例和RangeSelector是什么关系?


                   2、根据Alice前面给出的性能测试代码,C1Chart在读取速度上比FlexChart会慢,我运行这个代码的时候发现,在100000个数据以上的时候,虽然程序测出的时间确实flexChart比C1Chart要快,但是FlexChart会有明显的迟钝感,从点完按钮开始就可以看到FlexChart在加载数据的时间很长。
来自群组: 葡萄城MVP

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

6 个回复

倒序浏览
Alice
社区贡献组   /  发表于:2016-12-6 10:49:24
沙发
1.你创建一个RangeSelection(它的接口是C1.Win.Chart.Interaction.RangeSelector)。
然后通过创建对象将FlexChart和它建立关系,代码参考:
C1.Win.Chart.Interaction.RangeSelector XRangeSelector = new C1.Win.Chart.Interaction.RangeSelector(FlexChart);
接着在RangeSelector的ValueChanged事件里通过它的值更改,用代码改变flexChart轴的范围。代码参考:
  1. FlexChart1.AxisX.Min = XRangeSelector.LowerValue;
  2.     FlexChart1.AxisX.Max = XRangeSelector.UpperValue;
复制代码

他们就是这样建立关系,控制的。

2.Demo我收到了,我测试后给你回复。

请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
fengzhiyi
社区贡献组   /  发表于:2016-12-6 11:57:43
板凳
   C1.Win.Chart.Interaction.RangeSelector rang;
        private void Form1_Load(object sender, EventArgs e)
        {
            rang = new C1.Win.Chart.Interaction.RangeSelector(flexChart1);
           // rang.Location = new System.Drawing.Point(573, 153 + 262);
            rang.Visible = true;
      
            this.rang.ValueChanged += new EventHandler(rang_ValueChanged);
            this.flexChart1.Header.Content = "FlexChart";
            this.c1Chart1.Header.Visible = true;
            this.c1Chart1.Header.Text = "C1Chart";
        }
        void rang_ValueChanged(object sender, EventArgs e)
        {
            flexChart1.AxisX.Min = rang.LowerValue;
            flexChart1.AxisX.Max = rang.UpperValue;
        }

加了这样一段代码。但是主窗体运行后并没有显示。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2016-12-6 14:07:46
地板
fengzhiyi 发表于 2016-12-6 11:57
C1.Win.Chart.Interaction.RangeSelector rang;
        private void Form1_Load(object sender, Eve ...

1.初始化RangeSelector的时机不对,我在Demo上改好了,请看附件:

如果想在FlexChart1的RangeSelector变化后做处理,可以利用RangeSelector的ValueChanged事件。
你在添加另外一个FlexChart2,然后FlexChart1的RangSelector变化,FlexChart的轴变化就可以了。


2.Demo我测试过了,你的意思是FlexChart的实际渲染速度比较慢么?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
fengzhiyi
社区贡献组   /  发表于:2016-12-6 14:23:11
5#
Alice 发表于 2016-12-6 14:07
1.初始化RangeSelector的时机不对,我在Demo上改好了,请看附件:

如果想在FlexChart1的RangeSelector ...

1--->> 你的意思是如果想实现上面图形展示,下面是范围选择区,就要做两个flexChart,加载一样的数据源?
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2016-12-6 17:24:54
6#
fengzhiyi 发表于 2016-12-6 14:23
1--->> 你的意思是如果想实现上面图形展示,下面是范围选择区,就要做两个flexChart,加载一样的数据源?

是的,就是这个意思。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2016-12-7 09:50:03
7#
fengzhiyi 发表于 2016-12-6 14:23
1--->> 你的意思是如果想实现上面图形展示,下面是范围选择区,就要做两个flexChart,加载一样的数据源?

之前的flexchart的问题,我做了示例给你演示,两个chart间的交互。
请参考:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部