asp.net使用mscharts生成图表

最近在做一个项目时,用到数据的统计分析,如果把数据导出到excel生成图表,自然是一个办法,但是太麻烦了。微软有专门做图表的控件,为什么不用呢。
mschart控件只能用在vs2008上,而且必须安装了.NET3.5 SP1,否则mschart安装不上。
使用方法很简单,把chart控件拖进页面,后台写绑定程序。数据绑定时有两句代码要注意:
        Chart1.DataSource = ds.Tables["length"];                         //数据源
        Chart1.Series["Series1"].XValueMember = "lengtharea";      //x轴
        Chart1.Series["Series1"].YValueMembers = "count_l";         //y轴
如果是饼图,我们比较习惯用百分比标识每一块的大小,但是现在它显示的count_l的数据,不是百分比,怎么办呢
加上一句:
        Chart1.Series["Series1"].Label = "#PERCENT{P2}";             //数据显示为百分比
可是这样前台连图例都显示百分比了,咋办
在chart属性框里,打开legends集合,如果没有legend成员添加一个,添加legend成员后,在其右边 打开     cellColumns集合 ,添加一个Column1,将ColumnType 选为SeriesSymbol,再添加一个Column2,将ColumnType属性选为Text,并将下面的Text属性打开,删去原有的#LegendText,再插入新关键字,选择x值。这样Legend第二列标签在显示时就会显示对应的x轴的值了。
如果是条形图,想去掉条形图后面的网格线:
找到chartareas属性,打开,打开其中的axes集合, 其中的X axis 与 Y(value) axis 下的majorgrid设置为false,网格线就不见了。
如果想让图表是3d效果呢?
Chart1.ChartAreas["ChartArea1"].Area3DStyle.Enable3D = true;

你可能感兴趣的:(asp.net,图表,mschart)