一、报表简介
作用:开发winform或web时,用来分析、统计各各种业务数据的表。
缺点:外观单一,无法清晰的战士要对比的数据见得差异、无法直观的看到数据的走势等。
二、常用的图形化报表组件
1、Highcharts(开源)
可制作:直线图、曲线图、区域图、区域直线图、柱状图、饼状图、散装图等。(纯javaScript编写)
2、水晶报表(Crytal Report)
一款商务智能(BI)软件,主要用于设计及产生报表。
3、jqChart
是在html5和jquery的基础上开发的一款图形化报表组件。
4、MSChart
微软推出的功能强劲的图形化报表组件。
三、MSChart报表
1、MSChart的类型
Point(点图类型)
FastPoint(快速点图类型)
Bubble(气泡图类型)
Line(折线类型)
Splin(样条图类型)
StepLine(阶梯线图类型)
FastLine(快速扫描图类型)
Bar(条形图类型)
StackedBar(堆积条形图类型)
StackedBar100(百分比推积条形图类型)
Column(柱状图类型)
StackedColumn(堆积柱状图类型)
StacedColumn100(百分比推积条形图类型)
Area(面积图类型)
SplineArea(样条面积图类型)
StackedArea(堆积面积图类型)
StackedArea100(百分比推积条形图类型)
Pie(饼图类型)
2、MSChart报表实例(曲线图)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
protected void Page_Load(object sender, EventArgs e) { ShowData(); } private void ShowData() { //检索重庆市月平均气温 string sql = @"select chvCityName,DATEPART(MONTH,dtnMeasure) as 'Month',AVG(fitTemperature) as 'AvgTemp' from City where chvCityName='重庆' or chvCityName='北京' group by chvCityName,DATEPART(MONTH,dtnMeasure) order by Month desc"; DataSet ds = DbHelper.Query(sql); //为图表添加2个序列 this.Chart1.Series.Clear(); this.Chart1.Series.Add("重庆"); this.Chart1.Series.Add("北京"); //设置每一个序列的图表类型 this.Chart1.Series["重庆"].ChartType = SeriesChartType.Line; this.Chart1.Series["北京"].ChartType = SeriesChartType.Line; //设置图表背景颜色 this.Chart1.BackColor = Color.Azure; //设置图表边框样式 this.Chart1.BorderlineColor = Color.Green; this.Chart1.BorderlineWidth = 5; this.Chart1.BorderlineDashStyle = ChartDashStyle.Solid; this.Chart1.Titles.Add("中国城市月平均气温走势图"); foreach (DataRow row in ds.Tables[0].Rows) { //定义数据点 DataPoint point = new DataPoint(Convert.ToDouble(row["Month"]), Convert.ToDouble(row["AvgTemp"])); //设置每个数据点在X轴的标签文本 point.AxisLabel = string.Format("{0}月", row["Month"]); //设置每一个数据点标签的文本 point.Label = string.Format("{0}°", row["AvgTemp"]); //设置鼠标悬浮至数据点的提示文本 point.LabelToolTip = string.Format("{0}月平均气温:{1}摄氏度", row["Month"], row["AvgTemp"]); this.Chart1.Series[row["chvCityName"].ToString()].Points.Add(point); } }