导航

公墓网

当前位置: 首页 > 公墓资讯

fusioncharts.js、fusioncharts.js中this.ref未定义

更新时间:2025 08 02 08:11:02 作者 :庆美网 围观 : 26次

其实fusioncharts.js、fusioncharts.js中this.ref未定义的问题并不复杂,但是又很多的朋友都不太了解,因此呢,今天小编就来为大家分享fusioncharts.js、fusioncharts.js中this.ref未定义的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

要想导出图片必须下载fusionCharts 3.1以上的破解版,除了自己需要的swf文件外(包括FCExporter.swf) 还要两个js文件:

相信各位应该很清楚FCExporter.swf和这两个js的用途,在这我就不做多解释了!将两个js导入jsp页面:

2、生成报表

fusioncharts.js、fusioncharts.js中this.ref未定义

实现报表很简单,只需要一下几行代码即可:

1.columnChart = new FusionCharts(\”FCF_Column3D.swf\”,\”Report\”, \”400\”, \”300\”, \”0\”, \”1\”);//其他参数不做解释,最后一个参数设置为1 表示非debug模式显示报表

2.columnChart.setDataXML(data);//data为数据源 加载数据

3.columnChart.render(\”ReportDiv\”);//需要显示在哪个div里 绑定div的id属性

OK各位,当说到这里的时候,我要插入一点,fusionCharts加载数据有三种方式: Xml文件格式加载,Javascript的json格式加载,字符串拼凑加载。

最重要的是,在chart的属性上要包括以下三个属性:

3、右键导出

当你的界面能看到超炫的报表了,而且确保是fusionCharts 3.1以上的版本,此时您在报表上右键是绝对可以看到导出菜单的:

呵呵,到了这里,奉劝各位别高兴太早!尽管你现在导出jpg、png、或pdf都没用的,根本就没导出。别急,我们回到最开始的数据源代码,想要导出图片必须加上以下参数:

1.exportEnabled=\’1\'(开启导出模式)

2.exportAtClient=\’1\'(确定客户端导出)

3.exportHandler=\’fcExporter1\’ (对应前台导出处理程序的标识,网络说是写一个jsp、asp或php的路径,那是服务端导出,在这里不用)

4.exportDialogMessage=\’正在生成,请稍候…\’ (导出时的提示语)

5.exportFormats=\’JPG=生成JPG图片|PDF=生成PDF文件\'(右键菜单格式化成中文)

到这里虽然你还无法导出图片,当就快接近尾声了,此时你可以看到的效果已经变成中文的了的。

4、前台编写导出脚本

还记得我么之前说的exportHandler=\’fcExporter1\’吗?属性值是绑定前台导出处理程序的标识。那现在我们就来写这个处理程序。在你生成报表代码的后面添加如下代码:

01.var myExportComponent = new FusionChartsExportObject(\”fcExporter1\”,\”FCExporter.swf\”); //参数1:为处理程序标识,参数二为:上文中提到的导出需要用到的swf文件

02.myExportComponent.componentAttributes.btnColor = \’EAF4FD\’;

03.myExportComponent.componentAttributes.btnBorderColor = \’0372AB\’;

04.myExportComponent.componentAttributes.btnFontFace = \’Verdana\’;

05.myExportComponent.componentAttributes.btnFontColor = \’0372AB\’;

06.myExportComponent.componentAttributes.btnFontSize = \’12\’;

07.//Title of button

08.myExportComponent.componentAttributes.btnsavetitle = \’另存为\’

09.myExportComponent.componentAttributes.btndisabledtitle = \’右键生成图片\’;

以上都是导出按钮的样式设置 不做解释

最关键的是以下这行代码:参数exproterDiv表示导出按钮将在哪个div里面显示,即:我们必须在页面加上一个div 且id=exproterDiv

1.myExportComponent.Render(\”exproterDiv\”);

当这一切都成功的设置后,您再尝试右键生成jpg图片之后,你可以在id为exproterDiv里面看到:

点击’另存为’将弹出保存框:

本站文章除注明转载外,均为本站原创或翻译

FusionCharts使用教程:从评估版升级

该指南是给那些在应用程序中使用了FusionCharts的评估版本,并想升级为商业授权的用户参考。FusionCharts的试用版没有任何功能限制,只是所有的图表都带有水印而已。

要升级,你只需以下几个步骤:

  1. 用你在购买授权时收到的文件(可在你下载的js文件夹中找到)替换评估版本中的JavaScript文件。
  2. 如果你正在使用是FusionCharts Suite XT(早于V3.4)的早期试用版[文件名已经更改]。因此,确保你从下载的js文件夹中复制以下文件:
    • fusioncharts.charts.js
    • fusioncharts.js
    • fusioncharts.powercharts.js
    • fusioncharts.gantt.js
    • fusioncharts.maps.js
    • fusioncharts.widgets.js
  3. 你必须清除你的浏览器缓存。这一步至关重要。

到这一步,你就升级到FusionCharts的商业授权版了,那么你应用程序中的图表将再也没有水印了。

只升级授权的特定子产品:

当只升级特定的子产品时,需牢记以下几点:

  • FusionCharts XT:如果你是从FusionCharts XT的评估版本升级,你需要从js文件夹复制fusioncharts.charts.js和fusioncharts.js文件到你的工作目录,并且在你的源代码中收录或更新它们。
  • PowerCharts XT:如果你是从PowerCharts XT的评估版本升级,你需要下载最新的PowerCharts XT包并从js文件夹复制fusioncharts.charts.js和fusioncharts.js文件到你的工作目录,并在你的源代码中收录或更新它们。
  • FusionWidgets XT:同样如果你是从FusionWidgets XT的评估版本升级,则需要从js文件夹复制copyfusioncharts.js,fusioncharts.widgets.js和fusioncharts.gantt.js文件到你的工作目录,并在你的源代码中收录或更新它们。
  • FusionMaps XT:如果你是从FusionMaps XT的评估版本升级,你必须下载最新的FusionMaps XT包,从js文件夹复制fusioncharts.maps.js文件以及具体的地图定义到你的工作目录中,然后在你的源代码中收录或更新它们。

若你购买了授权的产品生成的图片还带有水印,那么检查以下问题:

  • 是否复制了正确的JavaScript文件并覆盖在正确的位置?
  • 是否清除了浏览器缓存?

相关产品购买请咨询\”在线客服\”。

本站文章除注明转载外,均为本站原创或翻译

20 个最棒的 JavaScript 图表库

每个企业在做重要决定时都倾向于做数据分析,实际上他们很多时候都是沉沦在数据里头,不知道如何跳出其中。企业一直寻求更好的方式来可视化数据、进行更好的互动、使图表多角度化。毕竟,只有从数据中得出的见解才是有用的。

JavaScript 图表库出现了,作为美观且容易理解的交互式的可视化图表最有力的工具,它更容易提取和传达关键的模式和见解,而这一点在静态图表中往往不明显。

为了使事情更加简单,我努力挖掘了很多选项,找到了最好的JavaScript 图表库。来,让我们开始吧。

1、chartist

Chartist的高效和人性化设计甚至吸引了离开 Excel 就会感觉不舒服的人。可响应(使用媒体查询)和独立 DPI 意味着这些图表可以为你提供一个良好的解决方案,如果你在考虑将你的图表应用于包括手机,平板和桌面电脑的多终端设备,基于SVG的设计让它在未来更具兼容性。

Chartist 的与众不同在于它是社区的成果,这使得它没有其他图表库的局限性。由于过于关注琐碎的变动和功能完整,导致你在使用其他类库时很焦心。

协议: 开源,所有用户皆可免费使用。

2、FusionCharts

FusionCharts带来了最全面的库,超过90种图表和900种图——所有均就绪备用。它们自诩为行业内最好看的图表,它提供了一个功能强大的体验仪表板,通过它可以鸟瞰其整个业务功能。

FusionCharts 兼容从 PC 和 Mac 电脑,iPhone 和 Android 平板电脑等多种设备;他们做了许多额外的努力来确保跨浏览器的兼容性,甚至包括 IE6!

他们还涵盖了所有基础格式 —— JSON 和 XML 数据格式都能够接受;绘制可以通过 HTML5、SVG 和 VML,图表可以导出为 PNG、JPG 或 PDF 格式。FusionCharts 的扩展可以很容易地与你所选择的任何技术集成,包括 jQuery,AngularJS,PHP 和 Rails。

总的来说,FusionCharts 拥有你创建漂亮图表和做严格业务分析所需的任何特征和格式。而且最好的部分是非商业用途时你可以免费下载并使用,没有任何限制。

源码许可证:非商业免费,商业用途收费。

3、DyGraphs

Dygraphs 是一个开源的 JavaScript 图表库,最适用于极端大数据集。它是开箱式互动,通过缩放甚至可以支持手机。

它既兼容主流浏览器,也向后兼容 IE8。选项和自定义回调功能使它具有极高的可配置性。

协议: 开源,面向所有用户免费。

4、Chartjs

Chart.js适用于小项目,扁平化,干净,优雅,快速。它是一个微型的开源库,最小化压缩后只有11kb大小。它包括六个核心图表类型(线图,柱图,雷达图,极地图,饼图和环形图),每个都是独立的模块,所以你甚至可以只加载项目需要的模块以最大化缩小代码占用空间。

它使用HTML5 canvas元素渲染图表,并且使用polyfills方式兼容在IE7/8上运行。所有图表都是可响应的。

协议: 开源,面向所有用户免费。

5、GoogleCharts

Google Charts 提供大量不同种类的图表,它最大程度上满足了数据可视化的需要。图表基于 HTML5/SVG,为了兼容老版本的 IE 还支持 VML。所有的图表都是可交互可缩放的。你可以去看看他们的图表库。最棒的是他们的图表绝对免费。

协议:免费,但是不开源,在你的服务器上使用他们的 JS 文件是 Google’s协议不允许 的。因此如果你是一家企业并且有很多敏感数据,Google Charts 可能不是一个最佳的选项。

6、HighCharts

Highcharts 是又一个流行的交互图表库,与其他库一样,它是基于 HTML5/SVG/VML,所以不需要扩展插件。提供的图表类型很广泛,像曲线图,柱状图,条形图,地图,仪表盘等。

它还提供个人用户免费可在线生成交互式图表的接口 Highcharts cloud,商业使用需要购买授权。

协议: 非商业使用免费,商业使用付费。

7、Flot

Flot 是最古老的图表库之一,用法简单并聚焦交互特性。它是特定的 jQuery 库,这意味着使用它需要熟悉基础的 jQuery。但是从另一方面来说,这意味着你可以全面控制呈现,动作和用户交互。

Flot 兼容大多数浏览器,向下兼容到 IE6。Flot 的插件库提供许多类型的图,所有贡献都是社区提供的。你可以看看这些由 Flot 制作的例子。

协议: 开源,面向所有用户免费。

8、D3.js

D3通常是提到数据可视化时出现的第一个名字。它是一个非常强大的开源项目,可以通过动态更新DOM创造出惊人的视觉效果和图形。另外,它使用HTML,CSS和SVG。

它符合W3C标准,并且是跨浏览器兼容的。开发者们往往喜欢它所带来的许多特征,比如“进入和退出”以及强大的过渡。你可以到这里找到一些 D3 的示例。

需要说明的是,它没有预建图表,即时学习基本的图表也有一条非常陡峭的学习曲线。但开发者们极富创新性,开发出了不少基于D3的包装库。后面我们将涉及到其中的一些佼佼者。

源码许可证: 开源。免费使用。

9、n3-charts

如果你正在寻找一种在 AngularJS 应用下创建简单互动线图的方法,这将是你所需要的。N3 基于D3.js,针对少量受众–基于 AngularJS 绘制通用线图。如果你需要更多的图表类型,它可能不适合你。你可以在这里看到一些N3线图的实例。

源码许可证:开源。对所有人免费。

10、NVD3

NVD3是一个旨在建立可复用的图表和组件的 d3.js 项目——它提供了同样强大的功能,但更容易使用。它可以让你处理复杂的数据集来创建更高级的可视化。

源码许可证:开源。对所有人免费。

11、Ember Charts

Addepar 的开发者正为提升 Ember 以及其附属库 Ember Charts、Ember Tables 和 Ember Widgets 的体验的工作而稳步推进着。Ember Charts 基于 D3.js 和 Ember.js 框架提供了一个易于使用的,可扩展的图表套件。

其强壮且优雅——针对坏数据的错误处理能确保有坏数据时应用程序不会崩溃。你甚至可以通过扩展它来创建自己的图表类型。

源码许可证:开源。对所有人免费。

12、jQuery Sparklines

我们一直在谈论那些能搞定一切的重量型的库。但有时你需要的是针对简单的任务简单些的东西。jQuery Sparklines 插件提供了一个合适的解决方案。它能够被用来生成迷你型的小内嵌图表,刚好足够去表现趋势——只需要最小量的编码。适用于大多数现代浏览器包括更老的IE6。

源码许可证:开源。对所有人免费。

13、Sigma.js

当我们在特定的使用场景下时,我们必须谈谈 Sigma。Sigma 是一个强大的 JavaScript 库,其关注于呈现交互图形和 Web 网络。

Sigma 的库和插件包有大量的互动设置。一旦你使用了 Sigma,你将再也不会觉得线图无聊。看一下这个sigma.js侧翻演示你就会明白我的意思。

源码许可证:开源。对所有人免费。

14、Morris.js

是的,正如 Morris 所说,好看的图不应该制作困难。Morris 是一个基于 jQuery 和 Raphael 的轻量级库,它提供简单干净的线条,面积图,条形及圆环图。如果你正在寻找一些快速简单且优雅的库,它绝对值得一试。

源码许可证:开源。对所有人免费。

15、Cytoscape.js

Cytoscape.js 是一个开源的、功能齐全的图形库,它纯粹用 JavaScript 编写,基于 LGPL3+ 并完全免费。经过高度优化之后,它并不依赖外部。Cytoscape.js 可以让你创建可复用的图形工具,并能够集成到你的 JavaScript 代码中。

它同样兼容所有现代浏览器,还兼容各种软件框架,比如CommonJS和Node.js,AMD/Require.js,jQuery 以及 Meteor/Atmosphere 等。注意,虽然它与Cyctoscape 桌面应用名字相同,但它们是完全不同的。

源码许可证:免费。对所有人免费。

16、C3.js

C3.js 是另一个基于 D3 可重用的图表库。大量的基于 D3 的图表工具表明了太多人喜欢 D3 的功能,但也反映了大家讨厌用 D3 直接编码。

C3.js 提供了一种不同于 D3 学习曲线的方法,它将构建整个图表所需要的代码进行了包装。C3允许你创建自定义的类,这样就可以生成自己的风格。它提供了大量的API和回调,以便你可以在第一次渲染之后更新图表。

源码许可证:开源。对所有人免费。

17、Rickshaw

Rickshaw 在 Shutterstock 被开发为一个建时间序列图的工具包。像其他一些我们已经讨论过的工具一样,Rickshaw 也是基于 D3 库。它是开放并开源的(遵循 MIT 许可)。

你可以在这里看到一些 Rickshaw 的有趣例子。Rickshaw 的众多扩展和自定义的特性能够让你生成漂亮的时序图。

源码许可证:开源。对所有人免费。

18、Cubism.js

Cubism 也许是显示时间序列最佳的 D3 插件。是什么使它脱颖而出的呢?你可以引入多个来源的数据,比如 Graphite、Cube 和其他来创造令人敬畏的实时图表来展现你的数据。

它能够渲染增量,使用 Canvas 来一次一个像素的偏移图表。Cubism 的水平图要比标准的平面图更好地利用垂直空间,能够让你一眼下来获取更多的数据并增加一目了然的可能性。

源码许可证:开源。对所有人免费。

19、Plottable.js

Plottable 采取了一些不同于 D3 框架的方法。它已经有一套可插拔的模块化组件,这些组件封装了渲染逻辑。这形成了一个单独的布局引擎用来实际定位。

这意味着你可以使用任何 Plottable 的组件并将其添加到现有的图表,或使用 Plottable 创建一个全新的图表。它基本以一个更模块化、即插即用的方式赋予了你 D3 的力量。可以通过这些示例看一下 Plottable 的能力。

源码许可证:开源。对所有人免费。

20、Canvas.js

正如名字所隐含的,Canvas.js 是一个 HTML5 —— JavaScript 的图表库,基于 Canvas 元素。Canvas 允许你创建完全响应式且跨设备的丰富图表。除此之外,它有许多很好看的主题,他们声称要比传统的基于 Flash 和 SVG 图型快10倍。

源码许可证:非商业免费,商业用途收费。

总结

数据的可视化和分析是当今业务流程的的一个重要的组成部分。公司不论大小,都需要简洁、高效、互动性的方式来诠释数据。所以选择适合你需求的 JavaScript 图表库尤为重要。

像 FusionCharts,GoogleCharts,Dygraphs 或 D3 的衍生库可能更适合那些处理大量数据的企业,或那些很大程度上依赖于数据分析的小公司。如果你只需要一些小而快的库,Morris.js 或 Chart.js 或许更适合你。对于图形和和网络,Cytoscape 或 Sigma.js 可能是更好的选择。

我尽量将最好的工具包括在这里,但我相信你也有你的最爱,你最喜欢的 JS 图表库是哪个,为什么?

OK,关于fusioncharts.js、fusioncharts.js中this.ref未定义和的内容到此结束了,希望对大家有所帮助。

用户评论

面瘫脸

我昨天刚遇到这个问题!我也是在用 fusioncharts.js 绘制图表的时候,发现 `this.ref` 是 undefined 的。 后来发现是版本问题导致的,更新到了最新版之后就解决了!

    有7位网友表示赞同!

歇火

我也是经常使用fusioncharts.js来制作图表,你的文章很实用!昨天就在调试代码时遇到类似的问题,还好通过你的博客找到了解决方法,真是太棒了!

    有5位网友表示赞同!

容纳我ii

FusionCharts.js这块一直想学,看这个帖子感觉有点基础知识没跟上,好像缺少一些关于对象定位和版本管理的教程啊。希望能提供更细致的讲解。

    有11位网友表示赞同!

强辩

我也是在使用 FusionCharts.js 时遇到 `this.ref` 未定义的情况,调试了好久都没有解决!你的博客让我明白这个错误的原因, 还是得注意代码的版本兼容性!

    有17位网友表示赞同!

疯人疯语疯人愿

这个问题确实比较蛋疼,还好Fusioncharts.js文档写的清楚,能找到很多解决方案。不过对于初学者来说可能有点难度,希望官方能在教程上加强一些基础知识的讲解

    有14位网友表示赞同!

窒息

我用 fusioncharts.js 做图表的时候也遇到过类似问题, 后来发现是引用方式不正确导致的,一定要按照官方文档的要求来引用文件才能正常使用。

    有14位网友表示赞同!

柠夏初开

这个博客写的挺好的!我也经常使用fusioncharts.js做工作报告和演示文稿,确实遇到了 `this.ref` 未定义的问题。还好通过你的文章找到了解决方法,非常感谢分享!

    有13位网友表示赞同!

单身i

FusionCharts.js 的文档的确比较详细, 我今天刚开始学习它的语法, 遇到这个错误的时候参考了官方文档,最终解决了问题, 真是太有用!

    有10位网友表示赞同!

南宫沐风

fusioncharts.js 这套工具真的很好用,功能强大,图形效果精美。 我正在开发一个项目,需要用到它来制作一些复杂图表, 可惜总是在版本更新后遇到这样的兼容性问题...

    有14位网友表示赞同!

命运不堪浮华

你分享的经验很有价值!我也在开发中遇到了类似的问题, 发现这个 `this.ref` 的错误经常出现在升级版本库以后。感谢你的提醒,我会注意查看文档对最新版本的兼容性和使用方式。

    有12位网友表示赞同!

余温散尽ぺ

我的项目使用的fusioncharts.js版本比较老了,可能是出现了兼容性问题导致` this.ref` 未定义的错误。今天更新了版本并重新调试,希望能够解决这个问题。

    有18位网友表示赞同!

尘埃落定

我也遇到了过类似的问题!当时我直接去网上搜索解决方案,但最终还是得去看官方文档才能找到正确的答案。希望你们能提供更针对性的入门教程!

    有10位网友表示赞同!

一纸愁肠。

fusioncharts.js 的学习曲线确实有点陡峭,很多功能都需要深入了解其API和源码才能掌握。 遇到 `this.ref` 未定义的问题的时候, 我建议大家先仔细阅读官方文档,然后再尝试调试代码。

    有12位网友表示赞同!

冷嘲热讽i

我一直在使用 FusionCharts,它的图表效果很好看。但是有时碰到那些奇怪的版本错误, 真的头疼!希望官方能给出一个更完善的解决方案,解决这些兼容性问题

    有13位网友表示赞同!

标签: 公墓资讯
相关资讯
  • 哪些网站被评为怀孕信息最全面、最权威的前十名?

    随着科技的发展,越来越多的孕妇和准妈妈开始依赖网络获取怀孕相关的信息。但是在众多的网站中,哪些被评为怀孕信息最全面、最权威的前十名呢?这无疑是一个备受关注的话题。今天

    2025-08-02 08:07:32 公墓资讯 
  • 哪些网站是最受欢迎的母婴购物网站?

    妈妈们,你们是不是也经常为了宝宝的衣食住行而犯愁呢?母婴购物网站就是为了解决这个问题而生的。随着互联网的发展,越来越多的母婴购物网站涌现出来,但是哪些网站才是最受欢迎的

    2025-08-01 18:57:32 公墓资讯 
  • 哪些网站是专门为幼儿设计的?

    小朋友们的世界是充满好奇和惊喜的,而专门为幼儿设计的网站就像是一扇通往奇幻世界的大门。在这些网站上,你可以找到许多适合自己年龄的内容,不仅能满足好奇心,还能帮助你学习知

    2025-08-01 18:53:31 公墓资讯 
  • 哪些网站上可以找到最好的母婴产品?

    嘿,亲爱的小伙伴们,想必你们都是有宝宝的新手爸妈或者即将成为爸妈的准备中吧!母婴产品的选择可是一件让人头疼的事情,要考虑到安全性、实用性、价格等等因素。所以今天就来和大

    2025-08-01 18:42:32 公墓资讯 
  • 哪些纯羊奶粉品牌值得推荐?

    嘿,亲爱的小伙伴们!今天我要和大家聊一聊生活百科行业的一个热门话题——纯羊奶粉。相信很多宝妈们都听说过纯羊奶粉,但是你知道它和其他奶粉有什么不同吗?又有哪些品牌受到消费

    2025-08-01 18:37:32 公墓资讯 
  • 哪些米粉品牌在市场上最受欢迎?

    米粉作为中国传统的主食之一,在市场上备受欢迎。然而,你是否曾想过,为什么米粉在中国市场如此受欢迎?究竟哪些米粉品牌能够脱颖而出,成为消费者心目中的首选?今天我们将带您进入生

    2025-08-01 18:33:31 公墓资讯