ComponentOne之WebChart概述

(一). 写本文章目的:    

         学了一段时间ComponentOne的图表,感觉ComponenOne图表控件还可以,图表样式也较丰富

  不过它的帮助全是英文的,而且有些地方写的比较粗糙,示例程序也不够详细. 我把它总结了一下.

(二).使用方法        

        1.安装好ComponentOne软件.

         2.建立一个WEB应用程序项目,名称为: TextChart

         3.将ComponentOne软件自带的控件集DLL文件(不一定全部,只把需要的一部分)拷贝到自己刚建的

            项目TextChart的Bin目录下面 (这里要手动放的原因是ComponentOne有时会找不到Dll)  

         4.双击项目里任何一个*.aspx文件,打开设计界面。 打开工具栏,在工具栏空白处右击,选“添加/删除”

             项,打开自定义控件窗口,在.net frame 组件选项卡下选择ComponentOne相应的组件,如果有清楚,

             就将所有的C1开头的全部勾选,点“确定按钮".  则ComponentOne的控件就显示在工具箱里面了  :)

         5. 到了这一步,就可以将ComponentOne控件像一般控件一样直接拖动使用了. 拖C1WebChart控件到

            窗体页面上.  然后右击控件,选 "Chart wizard..."就可以为其设置显示的样式(饼图/柱状图/折线图等)和

            属性了,用法跟一般控件差不多。(如果感觉还是陌生的话,请看下面(三),除了用设计器设置外,

           还可以代码用代码设置)

(三) . 代码设置

         1. 限于篇幅,只讲解主要的属性

         2.所有的图表样式原理差不多都一样的,这里只讲一下饼图的实现方法

       

          using C1.Web.C1WebChart;            //命名空间,必需加入,否则找不到里面的类和方法等
          using C1.Web.C1WebChartBase;
          using C1.Win.C1Chart;

           protected C1.Web.C1WebChart.C1WebChart C1WebChart1;   // 控件声明

 

 

         1) 

主要属性

          C1WebChart1.Header.Text="Chart 头";               //图表头标题
          C1WebChart1.Footer.Text="Chart 尾";                 //图表尾文本
          C1WebChart1.BackColor = Color.LightSteelBlue;   //背景色
          C1WebChart1.ImageFormat = System.Drawing.Imaging.ImageFormat.Png;  //图像存储格式         

           C1WebChart1.ChartGroups.Group0.ChartType = Chart2DTypeEnum.Bar;   //图表

                                                       // 类型,Chart2DTypeEnum枚举下有所有的图表样式,如饼图/柱状图等

                                                                                                                     
           C1WebChart1.Width=800;     //图表宽度

         

          2)

主要方法

            a .X轴标签(坐标)的方法,直接调用即可

               public void AddAxisX()
               {  
                       // label x axis with product names
                      Axis ax = C1WebChart1.ChartArea.AxisX;
                      ax.ValueLabels.Clear();  
                     ax.AnnoMethod = AnnotationMethodEnum.ValueLabels;
                     for(int i = 0; i < 100; i++)
                     {
                              //DataRowView drv = dv[i];
                             ax.ValueLabels.Add(i, (i+1).ToString());
                     }
                     try
                     {
                             ax.Max = 10 - .5;
                     }
                    catch {}  
                }
            a .Y轴标签(坐标)的方法,直接调用即可

                public void AddAxisY()
                { 
                      // label y axis with product names
                     Axis ay = C1WebChart1.ChartArea.AxisY;
                    ay.ValueLabels.Clear();  
                   ay.AnnoMethod = AnnotationMethodEnum.ValueLabels;
                    for(int i = 0; i < 10; i++)
                    {
                          //DataRowView drv = dv[i];
                         ay.ValueLabels.Add(i, (50*i).ToString());
                   }
                   try
                    {
                            ay.Max = 20 - .5;
                    }
                   catch {}  
                }

              c.画图表的方法
                public void GetPieData()
                {  
                       C1WebChart1.Legend.Visible = true;  //图表区块注释.
                       this.AddAxisX();   //上面方法a
                       this.AddAxisY();   //上面方法b
   
                       //生成数据
                        PointF[] data = new PointF[10];
                        for (int i = 0; i < data.Length; i++)
                        {
                                float y = float.Parse((3*i+5).ToString());
                                data[i] = new PointF(i, y);
                        }    
   
                        //清除现有的饼图
                       ChartDataSeriesCollection dscoll = C1WebChart2.ChartGroups[0].ChartData.SeriesList;   
                       dscoll.Clear();

                       //汇图,即将点数组交给控件,它会自己分配,并画出图形
                        ChartDataSeries series = C1WebChart1.ChartGroups[0].ChartData.SeriesList[0];
                       series.PointData.CopyDataIn(data);// 这里的data是PointF类型  
           
                        //给区块加标签
                        for(int i=0; i < data.Length; i++)
                       {
                               ChartDataSeries series = dscoll.AddNewSeries();
                               series.PointData.Length = 1;
                               series.Y[0] = data[i].Y;
                              series.Label="我是:"+(i+1).ToString();

                               //加标签
                               C1.Win.C1Chart.Label lbl = C1WebChart1.ChartLabels.LabelsCollection.AddNewLabel();
                               lbl.Text = string.Format("{0} ({1:c})","第:"+i.ToString()+"扇区", data[i].Y);
                               lbl.Compass = LabelCompassEnum.Radial;
                               lbl.Offset = 20;
                               lbl.Connected = true;
                               lbl.Visible = true;
                               lbl.AttachMethod = AttachMethodEnum.DataIndex;
                               AttachMethodData am = lbl.AttachMethodData;
                              am.GroupIndex  = 0;
                             am.SeriesIndex = i;
                             am.PointIndex  = 0;
                         }
                  } 



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=480916


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
摘要 WebChart 8.0能让您更加简单便捷的为Active Server Page (ASP) 应用程序创建各种样式的图表。ComponentOne WebChart 8.0内置了ComponentOne Chart 8.0技术,因此您可以创建ComponentOne Chart 8.0中包括的所有丰富图表和图象。这样,您可以将这些图表作为JPEG或PNG文件应用于任何浏览器。也可以将这些图表或图像作为ActiveX控件,允许最终用户在交互的应用程序中快速更改图表类型和数据值。 组件列表 技术特性 内置的ComponentOne Chart 8.0技术 ·图表类型:面积图(目前包含了3D效果图)、条形图、气泡图、烛台图、折线图、饼图、极坐标图、雷达图、带状图(ribbon)、散点图(scatter)、柱状图、表面积图、3D散点图、3D条形图等等。从各种科学信息到股市数据都会有一种图表相对应。 数据绑定到数据源时,通常无需书写任何代码 ·智能化的更新用于快速、实时的绘图和跟踪 ·内置的缩放、比例和旋转功能 ·直观的接口,就像检测出“点击”操作的链接。 ·具有无限制的标签,可以在任何地方进行注释。 ·在任何图表上都有动态的日期和时间轴 ·双Y轴和对数轴 ·支持科学、会计、货币、分数和百分数注释 ·报警区域能够让你使用颜色或图案的背景选项区,在图表中划分出重要的Y值 ·自定义区域及轮廓的样式 ·灵活的数组和常用数据布局,更方便于安装、布局和编辑 ·支持缺省值 ·直观、网格类型的数据编辑器 ·基于对象的CAPI, MFC, 和OWL的封装器 ·超过60个带有源代码的Demo和30个实例代码文件 ·32位支持 内置的Web Server 技术 ·可在Visual InterDev中无须任何编码便可设计和创建任何ComponentOne Chart 8.0图象。 ·将ComponentOne Chart 8.0图象作为JPEG或PNG文件应用于任何浏览器 ·将图表或图像作为ActiveX控件,允许最终用户在交互的应用程序中快速更改图表类型和数据值。 图片文件名 应用场景 适用于Web图表显示应用程序 运用优势 开发环境 Microsoft Visual Studio .NET  ; ; ; ;Microsoft Visual Basic .NET  ; ; ; ;Microsoft Visual C++ .NET  ; ; ; ;Microsoft Visual C# .NET  ; ; ; ;.NET Common Language Runtime V1.0 支持平台 Windows NT/2000/XP 许可证方式 标准报价 电话 021-58549800 Email: tools@sh.grapecity.com http://www.grapecity.com/china
Web Chart Flot - Flot 为 jQuery 提供的javascript代码库. 容易使用,有特色的图表,提供交互功能(能够放大缩小数据区域等)。 Open Flash Chart - Open Flash Chart 是一个 Flash 图表组件,很容易安装,提供以下语言的API: PHP, Perl, Python, Java, Ruby on Rails, and .Net 来控制图表。 ? AmCharts - AmCharts 是一个动画交互Flash图表。支持: Pie Charts, Line Charts, Scatter/Bubble Charts, Bar/Column Charts, 甚至股票图表。 ? Emprise JavaScript Charts - Emprise 是一个100% 纯 JavaScript 图表解决方案,并不需要任何 JavaScript 框架. ? PlotKit - PlotKit 是一个 图表和图像的Javascript 库. PlotKit 和 MochiKit javascript 库一起工作,支持HTML Canvas 和 Adobe SVG 显示 以及本地浏览器支持。尤其文档非常全。 ? Flotr - Flotr 是Prototype 1.6.0.2框架的javascript插件库。 Flotr帮助你在浏览器中创建图表,支持鼠标事件响应,放大缩小,CSS类型支持等。 PHP/SWF Charts - PHP/SWF 是一个简单支持web图表的强大工具,你能使用 PHP 来收集数据,并发送给flash,支持很多图表类型: Line, Column, Stacked column, Floating column, 3D column, Stacked 3D column, Parallel 3D column, Pie, 3D Pie, Bar, Stacked bar, Floating bar, Area, Stacked area, Candlestick, Scatter, Polar, Mixed. ? Visifire - Visifire 是用 Silverlight 做的,是一个开源可视化数据组件,使用Visifire你能创建动画 Silverlight 图表,支持 ASP, ASP.Net, PHP, JSP, ColdFusion, Ruby on Rails 或者 简单 HTML调用. ? FusionCharts - FusionCharts 是一个跨浏览器和跨平台的flash图表组件,能够被 ASP.NET, ASP, PHP, JSP, ColdFusion, Ruby on Rails, 简单 HTML 页面 甚至PPT调用. 几乎所有你知道的语言它都支持。 ? JFreeChart - JFreeChart 是一个开源java图表库,让开发者能够很容易在程序里面显示高质量的图表。 JFreeChart 项目从7年前便开始了,起始于 2000 年1月, 已经有四五万开发者已经使用了JFreeChart。JFreeChart 支持很多种图形文件格式: JPEG, GIF, PDF, EPS and SVG. 这对于java开发者是一个很好的资源。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值