目前在做项目完成数据统计,需要将统计数据进行图形化分析。将数据做成各种图表,即柱状图和折线图,由此接触了FusionCharts绘图插件,经过查询资料和做Demo,将项目功能完成,特此总结以备将来查阅。

一、FusionCharts简介

FusionCharts是一个JavaScript图表库,可以使用JavaScript创建交互式图表,仪表,地图和仪表板。所支持的常用的图表,新版本的FusionCharts已经不需要引用swf文件了,并且已经支持了json的数据格式

二、数据转换

2.1 原始数据

“石油储量最多的国家”图 国家| 石油储量 - | :-: | -: 委内瑞拉 | 290 沙特| 260 加拿大| 180 伊朗| 140 俄罗斯| 115 阿联酋| 100 美国| 30 中国| 30

2.2 将表格数据转换为JSON格式

{// 表格配置"chart": {"caption": "石油储量最多的国家 [2017-2018]","subCaption": "百万桶 = 一百万桶","xAxisName": "国家","yAxisName": "储量 (百万桶)","numberSuffix": "K","theme": "fusion",},// 表格数据"data": [{"label": "委内瑞拉","value": "290"}, {"label": "沙特阿拉伯","value": "260"}, {"label": "加拿大","value": "180"}, {"label": "伊朗","value": "140"}, {"label": "俄罗斯","value": "115"}, {"label": "阿联酋","value": "100"}, {"label": "美国","value": "30"}, {"label": "中国","value": "30"}]}

上面的JSON中有:创建图表对象用来定义chart元素,然后表格数据的每一行都存储在data数组中, 用来指定标签及其对应的值
Chart对象中有一对键值对,包含键和值

2.3 功能属性能够控制图标上的各种功能元素

  • caption属性:图表的标题。
  • subCaption 属性:图表的副标题。
  • xAxisName属性:x轴名称,yAxisName即y轴的名称。
  • numberPrefix属性:单位
  • theme属性:主题风格(默认Fusion主题,还有Gammel、Candy、Zune、Ocean)
  • palettecolors属性:自定义图表元素颜色或者使用“color”,在每一个元素为其添上自定义颜色
  • Border属性:showBorder显示图表边框,还可以自定义边框属性

三、引入FusionCharts Suite XT库

3.1 引入FusionCharts Suite XT JavaScript库

<script type="text/javascript" src="js/fusioncharts.js"></script>
<script type="text/javascript" src="js/fusioncharts.charts.js"></script>
<script type="text/javascript" src="js/fusioncharts.theme.fusion.js"></script>

3.2 为图表创建容器

每个图表,需要一对<div>元素容器来包裹,对图表添加ID来标记表格

<div id="chart-container">FusionCharts在这里显示</div>

3.3调整外观属性

使用fusion主题来自定义图表,如更改颜色,透明度,字体大小等

四、创建图表的实例

实例图表类型的为column2d,创建图表对象区别名为revenueChart,图表大小为700x400像素的Column 2D图表,dataFormat参数设置为json。还可以使用XML格式的数据setDataURL

<!DOCTYPE html>
<html><head><title>My first chart</title><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><script type="text/javascript" src="js/fusioncharts.js"></script><script type="text/javascript" src="js/fusioncharts.theme.fusion.js"></script><script type="text/javascript" src="js/fusioncharts.charts.js"></script><script type="text/javascript">FusionCharts.ready(function() {var revenueChart = new FusionCharts({"type": "column2d","renderAt": "chart-container","width": "700","height": "400","dataFormat": "json","dataSource": {// 表格配置"chart": {"caption": "石油储量最多的国家 [2017-2018]","subCaption": "百万桶 = 一百万桶","xAxisName": "国家","yAxisName": "储量 (百万桶)","numberSuffix": "K","theme": "fusion",},// 表格数据"data": [{"label": "委内瑞拉","value": "290"}, {"label": "沙特阿拉伯","value": "260"}, {"label": "加拿大","value": "180"}, {"label": "伊朗","value": "140"}, {"label": "俄罗斯","value": "115"}, {"label": "阿联酋","value": "100"}, {"label": "美国","value": "30"}, {"label": "中国","value": "30"}]}});revenueChart.render();})</script></head><body><div id="chart-container">FusionCharts在这里显示</div></body></html>

FusionCharts绘图插件详解相关推荐

  1. Logstash(二)input、codec插件详解

    input input 插件指定数据输入源,一个pipeline可以有多个input插件,我们主要讲解下面的几个input插件: - stdin- file- kafka Input Plugin – ...

  2. 我的世界服务器物品绑定插件,我的世界灵魂绑定插件详解

    我的世界灵魂绑定插件详解.那下面给大家分享的是关于灵魂插件的用途详细介绍,还有关于我的世界服务器防止熊孩子盗窃插件用途介绍哦~希望对大家有所帮助. 游戏园我的世界官方群:325049520(已满)二群 ...

  3. python turtle库setpos_Python内置海龟(turtle)库绘图命令详解(二)

    继续谈利用海龟库(turtle库)做图.在这篇文章(Python内置海龟(turtle)库绘图命令详解(一))中已经介绍了turtle的一些基本画图命令,包括画布的设计.画笔属性与状态的设置以及画笔的 ...

  4. Snort日志输出插件详解

    Snort日志输出插件详解 Snort是一款老×××的开源***检测工具,本文主要讨论他作为日志分析时的各种插件的应用.Snort的日志一般位于:/var/log/snort/目录下.可以通过修改配置 ...

  5. R统计绘图-PCA详解1(princomp/principal/prcomp/rda等)

    此文为<精通机器学习:基于R>的学习笔记,书中第九章详细介绍了无监督学习-主成分分析(PCA)的分析过程和结果解读. PCA可以对相关变量进行归类,从而降低数据维度,提高对数据的理解.分析 ...

  6. maven常用插件详解

    1. 简介 我们都知道Maven本质上是一个插件框架,它的核心并不执行任何具体的构建任务,所有这些任务都交给插件来完成,例如编译源代码是由maven- compiler-plugin完成的.进一步说, ...

  7. Rollup常用插件详解

    文章目录 系列文章 @rollup/plugin-node-resolve Options extensions @rollup/plugin-commonjs @rollup/plugin-babe ...

  8. java canvas详解_HTML5的canvas绘图技术详解

    原标题:HTML5的canvas绘图技术详解 本篇教程探讨了HTML5的canvas绘图技术详解,希望阅读本篇文章以后大家有所收获,帮助大家HTML5+CSS3从入门到精通 . < canvas ...

  9. fullcalendar php,php使用fullcalendar日历插件详解,fullcalendar日历

    php使用fullcalendar日历插件详解,fullcalendar日历 最近做课程表的项目,找了好多个插件感觉都不好用,无意间看到了fullcalendar,还挺简单的,很方便,先贴一张项目页面 ...

最新文章

  1. Python3中typing模块介绍
  2. with(nolock)的用法
  3. win10商店下载位置_开始菜单终变身但仍不完美!用这些利器让Win10改头换面吧...
  4. Excel中删除链接
  5. 在html页面提交值到动态页面时出现中文值为乱码的解决方案
  6. pythonopencv测距_python opencv单目测距 小孔成像原理
  7. 离开,是一个新的开始
  8. r语言 悲观剪枝_R语言实战(5) ——高级数据管理
  9. IDEA配置JUnit进行单元测试
  10. 解决Myeclipse中断点不起作用的方法
  11. 苹果M1芯片兼容mysql吗_苹果m1芯片相当于什么水平
  12. springboot redisTemplate 外部反序列化
  13. CTOD安悦系统目录转移软件
  14. lodop设置html字体大小无效,[图片问答]LODOP字体设置方法
  15. ffmpeg遇到Non-monotonous DTS in output stream的问题
  16. Splunk Filed Alias 字段改名
  17. 计算机考研调剂专业课,一波七折的计算机考研初试调剂经验教训贴,别放弃,太阳还在...
  18. 【手机刷机】360 n4s降级039 root刷机(卡刷、线刷等)
  19. Redis客户端常用命令大全
  20. 2018云栖大会总结

热门文章

  1. 记单词05-od,-hod(路)
  2. 我等到花儿也谢 - 张学友 - 真爱
  3. CSS学习笔记2字体属性和文本属性
  4. 2018杭州应届生php起薪,2018应届毕业生起薪排名出炉,这个专业起薪最高!
  5. 计算机大专生的平均工资水平,大学/大专应届毕业生工资待遇分析报告 - 职业圈...
  6. 图与排列、图的存在性
  7. DSP28335 SPI的使用
  8. BrandHouse在蓝筹中国基金领投的首轮融资中筹得400万欧元
  9. Ubuntu系统桌面版安装
  10. Python UnitTest接口自动化实战