之前项目中需要用到关于图形图表的统计,当时的项目是在 vs2005 上面进行的,就算微软的 mschar 控件已经出来了,当时也没有考虑,最后在网上找到了一个开源的图形图表 dll ,使用也是比较简单方便的!当然,还有其他的类似 webchar ,或者其他的,但是其他的 dll 不开源,或者收费,或者使用麻烦,或者功能不够强大!
在 vs2005 上面使用 ZedGraph 的总结
1. 优点:使用简单,直接添加引用 ZedGraph.dll 好玩 ZedGraph.Web.dll 两个 dll 就可以,因为该项目是开源的,所以可以自己修改代码以后再进行编译成新的 dll !
2. 我到目前发现的缺点就是不能控制 y 轴的条形图的大小,当条形图的数量很少的时候,就会自动变得很大条,非常不美观!
3. 下面是使用方法和代码
我主要是利用一个页面 char.aspx 显示处理,所有的数据放在 session 里面,然后在显示图形的页面 showimg.aspx 加个 html 或者 asp.net 的 img 控件,使之的 src 为 char.aspx ,当然,数据的处理还是在 showimg.aspx 进行处理,比如成立 x 轴和 y 轴的数据, title 的数据, legend 的数据等!
char.aspx
在赋值的 showimg.aspx 页面
二.微软的asp.net mschar 控件的使用
首先,说一下开发的环境
Vs2008 framework3.5 framework3.5Sp1 iis6.0
MSChart.exe 就是图表控件的安装程序;
MSChartLP_chs.exe 是语言包;
MsChart_VisualStudioAddon.exe 是扩展安装,可以在vs2008 里看到控件
还需要在开发的C 盘建立一个临时文件夹:TempImageFiles;
据说该控件是微软收购的,来源于 http://www.dundas.com/
上面这张表中所示的就是一张图表的所有组成。
从中我们可以看出,图表的五大元素为:附注(Annotations )、图表区(ChartAreas )、图例(Legends )、列(Series )、标题(Titles) 。
后来为了查清楚图形相关的东西,主要是图形的类型,比如有常见的柱形图,条形图,饼图,折线图,其他的不常见的是一些泡泡图,区域图等,详细可以看看excel 里面的图形,后来还研究了一下图形的设计,比如饼图,一般不能超过10 项饼块,超过的需要用其他来计算,还有各种条形图的美观和颜色搭配等等。
根据使用对比,个人总结微软mschar 的特性:
1. x 轴的下标能够通过处理(分两行)显示更多的文字,也可以通过处理文字的显示角度显示更多的文字!
2. 能通过交互操作掩藏图形,也可以通过图例掩藏任何一个图形!
3. 图片上的五大元素都可以进行属性设置,加上链接和tip 或者ajax 交互!
4. 可以通过z 值设置单个图形内的所有系列的交替,也可以设置单个页面的各个图形的交替!
5. 控件的数据源可以使任何数据,excel ,xml ,sql 等,当然也可以是数组或者其他的形式等!
6. 特殊的数据处理,比如数据位0 的时候
7. 可以很方便的再2d 和3d 之间进行切换,根据x y 轴进行排序,
Chart controls 的其它特色:
• 浏览器或报表中的图片,使用者可直接按鼠标右键存成图档。
• 透过 AJAX 技术,使用者在图表中做各种点选或鼠标操作时,会动态出现相关提示、额外的数据或信息。
• 透过 AJAX 技术,可让图表及里面的数据,每秒钟都持续一直更新。
• 也可以内建金融类及特定领域的图表,有现成的样板可直接套用在项目中。
关于数据绑定的问题,看以下这张表就了解了!
在讲绑定之前,先给大家看一张表,这张表介绍了在什么样的情况下用什么样的绑定方法,十分有用。
用zendgraph的截图
asp.net3.5的截图
最后,把相关的地址都附上!
(1) Microsoft Chart Controls for Microsoft .NET Framework 3.5 :
http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=130f7986-bf49-4fe5-9ca8-910ae6ea442c
包含 ASP.NET 和 Windows Forms 图表控件的核心安装程序
(2) Microsoft Chart Controls for Microsoft .NET Framework 3.5 语言套件 :
http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=581ff4e3-749f-4454-a5e3-de4c463143bd
(3) Microsoft Chart Controls Add-on for Microsoft Visual Studio 2008 :
http://www.microsoft.com/downloads/details.aspx?FamilyId=1D69CE13-E1E5-4315-825C-F14D33A303E9&displaylang=en
安装后可与 VS 2008 有效地整合,并可在 VS 2008 工具箱中,支持 ASP.NET 、Windows Forms 的 IntelliSense 功能
(4) Microsoft Chart Controls for .NET Framework Documentation :
http://www.microsoft.com/downloads/details.aspx?FamilyId=EE8F6F35-B087-4324-9DBA-6DD5E844FD9F&displaylang=en
Chart controls 的 documentation 、API 英文文件 (chm 格式 )
(5) Samples Environment for Microsoft Chart Controls :
http://code.msdn.microsoft.com/mschart
提供超过 200 个示例,可用 VS 2008 直接开启网站后执行,务必下载玩看看
(6) Windows Forms-ASP.NET Chart Control .NET Development MSDN Forums :
http://social.msdn.microsoft.com/Forums/en-US/MSWinWebChart/threads/
参考blog :
使用总结:
http://www.ntdrv.cn/Blog/Article.aspx?ID=2037
使用例子:
http://www.cnblogs.com/bluetiger/archive/2009/03/02/1401457.html
代码例子:
http://www.cnblogs.com/liubiqu/archive/2009/01/05/1368892.html