首页 > Asp > FusionChartFree报表

FusionChartFree报表

fusionchartsFusionChartsFree作为FusionCharts免费版。

唯一缺点是在y轴上不支持中文显示。

FusionChart支持当今流行的各种web语言,如asp,jsp,php,ruby on rails等。

由于工作需要,找了大量的图表插件,但有许多不支持中文显示。选择了asp,因为自己项目是asp。

类似的有许多图表都是采取flash读取xml来实现的,之前也意识到,但js和flash不是很懂。

FusionChartsFree asp精简版主要由两个文件构成。自己翻译了中文注释。

FusionCharts.asp

<!--r /&gt;--> '
'页面: FusionCharts.asp
'作者: InfoSoft Global (P) Ltd.
'@中文注释 By tomieric
'</div>
<div>'本页包含一个可以返回FusionCharts的函数</div>
<div>'encodeDataURL函数通过dataURL传送参数到FusionCharts中。
'如果您的dataURL参数已经有参数值,记住一定要进行编码。
'参数: strDataURL - dataURL必须传送图表数据(chart data)
'参数: addNoCacheStr - 是否添加其它的URL字符串的数据禁用缓存。
Function encodeDataURL(strDataURL, addNoCacheStr)
'如果需要可以添加无必要字符串缓存
if addNoCacheStr=true then
'我们添加 ?FCCurrTime=xxyyzz
'如果dataURL已经包含一个a ?, 我们添加 &amp;FCCurrTime=xxyyzz
'我们要替换"_", 因为 FusionCharts在URLs不能使用包含此字符
if Instr(strDataURL,"?")0 then
strDataURL = strDataURL &amp; "&amp;FCCurrTime=" &amp; Replace(Now(),":","_")
else
strDataURL = strDataURL &amp; "?FCCurrTime=" &amp; Replace(Now(),":","_")
end if
end if
' 将URL进行编码
encodeDataURL = Server.URLEncode(strDataURL)
End Function</div>
<div>'renderChart函数是通过JavaScript + HTML代码需要嵌入一个图表。
'假如在您的网页此函数已经包括了FusionCharts JS类</div>
<div>' chartSWF - 图表的显示主要通过的SWF文件名 (和路径)
' strURL - 如果您打算使用dataURL方法显示图表, 就通过URL传送swf文件路径. 否则,将其设置为“”(在dataXML方法的情况下)
' strXML - 如果您打算使用dataXML方法显示图表, 就利用xml来传送数据.否则,设置为 "" (在 dataURL 的情况下)
' chartId - 图表的DIV的ID值, 用于图表在html页面中显示的位置. 每个图表在html页面中必须使用一个ID.
' chartWidth - 图表显示宽度
' chartHeight -图表显示高度 (像素)</div>
<div>Function renderChart(chartSWF, strURL, strXML, chartId, chartWidth, chartHeight)
'首先我们要为图表写一个div. 一般设置div的id为"chartId"Div.
'DIV的名称是区分大小写.
--&gt;
&lt;!-- 图表脚本块从 开始 --&gt;
<div id="&lt;%=chartId%&gt;Div">Chart.图表加载中...
<!--r /&gt;--> '"Chart.图表加载中..."在图表未加载完成前显示,(可以加入进度条图片等。)
'(如果服务器中的swf文件加载滞后). "Chart.图表加载中..."文本也会显示给用户
'没有安装Flash Player.你可以配置它按你的需要(写一个在线安装Flash Player或提示下载url).
--&gt;</div>
<!--r /&gt;--> '现在,我们使用FusionCharts图表类。每个被命名为chart_“chartId”的ID创建图表的实例。
--&gt;
&lt;!--
		//实例图,主要利用js读取xml中的数据
		var chart_ = new FusionCharts("", "", "", "");
		
		//设置图表chart的dataURL值
		chart_.setDataURL("");
		
		//提供完整的XML数据使用dataXML方法
		chart_.setDataXML("");
		
		//最后反馈到chart图表中(指传送xml数据到swf中,flash文件可以通过xml交换数据。)
		chart_.render("Div");
// --&gt;
&lt;!-- 图表脚本块从 结束 --&gt;
<!--r /&gt;--> End Function</div>
<div>'renderChartHTML函数利用JavaScript转换它成html代码.
'此方法不使用图表嵌入JavaScript类.
'相反,它使用直接的HTML嵌入。
'所以,如果你看到的IE 6的图表(或以上),您会看到在图表上看到“点击激活...”信息。</div>
<div>' chartSWF - 图表的显示主要通过的SWF文件名 (和路径)
' strURL - 如果您打算使用dataURL方法显示图表, 就通过URL传送swf文件路径. 否则,将其设置为“”(在dataXML方法的情况下)
' strXML - 如果您打算使用dataXML方法显示图表, 就利用xml来传送数据.否则,设置为 "" (在 dataURL 的情况下)
' chartId - 图表的DIV的ID值, 用于图表在html页面中显示的位置. 每个图表在html页面中必须使用一个ID.
' chartWidth - 图表显示宽度
' chartHeight -图表显示高度 (像素)</div>
<div>Function renderChartHTML(chartSWF, strURL, strXML, chartId, chartWidth, chartHeight)
'Generate the FlashVars string based on whether dataURL has been provided
'or dataXML.
Dim strFlashVars
if strXML="" then
'DataURL方法
strFlashVars = "&amp;chartWidth=" &amp; chartWidth &amp; "&amp;chartHeight=" &amp; chartHeight &amp; "&amp;dataURL=" &amp; strURL
else
'DataXML方法
strFlashVars = "&amp;chartWidth=" &amp; chartWidth &amp; "&amp;chartHeight=" &amp; chartHeight &amp; "&amp;dataXML=" &amp; strXML
end if
--&gt;
&lt;!-- 图表脚本块 开始 --&gt;
<div></div>
 


FC_Colors.asp   获取颜色


FusionCharts asp版本:fusioncharts Tomi-Eric 测试中文 asp版

分类:Asp 标签:, ,
  1. 还没有评论。
  1. No trackbacks yet.

留下评论