咨询电话:186 7916 6165 咨询电话:186 7916 6165 (微信同号)    在线QQ:181796286
NEWS BLOG ·
学无止境
关注开优网络 关注前沿
ASP.NET Linq to XML
ASP.NET 生成缩略图、加水印

ASP.NET中的图像报表FusionCharts

发表日期:2015-10-01    文章编辑:南昌开优网络    浏览次数:3933    标签:ASP.NET应用

一、下载FusionCharts 3.1版  
二、拷入Code/CS/Bin中的FusionCharts.dll 和 FusionCharts文件夹及其中的所有js和swf文件到实际项目中
      FusionCharts.dll FusionCharts.zip
Column2D.swf为2D柱形图
Column3D.swf为3D柱形图
Area2D.swf为面积图
Line.swf为曲线图
Pie3D.swf为饼状图
三、使用FusionCharts的生成图表的三种方式
①、使用XML作为图表数据源
1、创建xml文件XMLFile.xml
<chart caption='Indian Premier League Points' xAxisName='Teams' yAxisName='Points'
  showValues='0' formatNumberScale='0' showBorder='0'>
  <set label='Mumbai Indians' value='16' />
  <set label='Chennai Super Kings' value='14' />
  <set label='Kolkata Riders' value='12' />
  <set label='Bangalore Royals' value='14' />
  <set label='Kochi Tuskers' value='10' />
  <set label='Kings XI Punjab' value='10' />
</chart>
注:该xml是FusionCharts的标准文件其中:
    caption:解说词及图表的标题
    xAxisName:X轴的名称
    yAxisName:Y轴的名称
    set标签label为名称value为值其中value必须为数字

2、引用FusionCharts.dll 和FusionCharts文件夹中的js文件
<script type="text/javascript" src="FusionCharts/FusionCharts.js"></script>
3、在文件中加上一个按钮,一个Literall控件,在按钮的事件中编写如下代码:
Literal1.Text = FusionCharts.RenderChart("FusionCharts/Column3D.swf""XMLFile.xml""""myFirst""700""500"falsetrue);

②、使用用户输入数据的方式
1、页面中添加Fusion Charts的脚本调用代码,如下:
<script type="text/javascript" src="FusionCharts/FusionCharts.js"></script>

2、在页面中添加一个表格,如下图所示:

ASP.NET中 使用Fusion Charts图表工具

  在这个表格中,允许用户输入三个不同的数值,然后我们进行相应的处理。

3、在提交的按钮的事件代码中,编写如下代码:

StringBuilder xmlData = new StringBuilder();
xmlData.Append("<chart caption='IPL Points' subCaption='For Season 2011 so far' 
showPercentValues='1' pieSliceDepth='30' showBorder='1'>");
xmlData.AppendFormat("<set label='Mumbai' value='{0}' />", txtMumbai.Text);
xmlData.AppendFormat("<set label='Chennai' value='{0}' />", txtChennai.Text);
xmlData.AppendFormat("<set label='Kochi' value='{0}' />", txtKochi.Text);
xmlData.Append("</chart>");
Literal1.Text = FusionCharts.RenderChart("FusionCharts/Pie3D.swf"""
xmlData.ToString(), "Sales""500""300"falsefalse);

③、使用数据库读取图表

1、页面中添加Fusion Charts的脚本调用代码,如下:
<script type="text/javascript" src="FusionCharts/FusionCharts.js"></script>

2、配置web.config连接库 使用代码生成器生成DAL层代码

3、在cs中加上添加按钮事件
IDataReader dr = new DAL.VoteDAL().GetRead();
StringBuilder xmlData = new StringBuilder();           
xmlData.AppendFormat("<chart>");
while (dr.Read())
{               
    xmlData.AppendFormat("<set label='{0}' value='{1}' />",dr["vote"].ToString(),dr["num"].ToString());               
}
xmlData.AppendFormat("</chart>");
lit.Text = FusionCharts.RenderChart("FusionCharts/Column2D.swf""",
xmlData.ToString(), "chart1""500""400"falsetrue);

4、在DAL层中加上获取数据流的方法
public IDataReader GetRead()
{
    string sql = "select vote, COUNT(ip) as num from cms_vote group by vote";
    Database db = DatabaseFactory.CreateDatabase();
    return db.ExecuteReader(CommandType.Text, sql);
}


学习站:http://database.chinaunix.net/a2011/0801/1226/000001226105.shtml