一、下載FusionCharts 3.1版
二、拷入Code/CS/Bin中的FusionCharts.dll 和 FusionCharts文件夾及其中的所有js和swf文件到實際項目中
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", false, true);
②、使用用戶輸入數據的方式
1、頁面中添加Fusion Charts的腳本調用代碼,如下:
<script type="text/javascript" src="FusionCharts/FusionCharts.js"></script>
2、在頁面中添加一個表格,如下圖所示:
在這個表格中,允許用戶輸入三個不同的數值,然后我們進行相應的處理。
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", false, false);
③、使用數據庫讀取圖表
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", false, true);
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