扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
可以用FineReport。FineReport的图表就是html5图表技术实现的,图表功能比较强大,参数传递灵活,且有移动版,最关键的是,完全符合楼主的开发量少的要求!刚刚特地去官网确认了一下,FineReport的基本理念就是零代码。其实严格来说,FineReport是一款专门做报表的工具,但报表中一般图、表共存,所以FineReport的图和表的功能都比较强了~
创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都做网站、网站制作、成都外贸网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的大石桥网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
1准备数据
在制作图表前,需要先定义图表的数据来源。
在上面的图表制作流程中提到数据来源有两种类型,数据集数据源和单元格数据源,本章节使用数据集作为数据源,如果需要使用单元格数据源,可查看定义图表单元格数据源。
新建工作薄,添加数据集,SQL语句为SELECT * FROM [销量],使用销量表作为图表的数据来源。
2插入图表并选择图表类型
图表有两种插入方式:单元格图表与悬浮图表,该例中我们以悬浮图表为例,单元格图表的插入方式请查看单元格图表。
点击工具栏中的插入悬浮元素插入图表,弹出图表向导,选择图表类型如柱形图,如下图:
注:插入图表和选择图表类型一般性是在一起完成的。
定义图表数据
选择完图表类型后,点击确定,返回报表主体界面,选中悬浮图表,在报表主体右侧上方的图表属性表中设置图表属性,选择图表属性表-数据,设置柱形图的数据,如下图:
设置图表数据,首先要选择数据来源,前面我们新建了一个数据集ds1,这张图表的数据来源于数据集数据,选择好数据来源之后,为分类轴、系列名、系列值绑定数据集中的字段,用图表来展示数据集中的数据。
分类轴:就是图表的横轴,即x轴,表示数据是按照什么分类显示的;
系列名:系列就是图表的纵轴,即y轴,系列名称表示每个分类下数据是按照什么顺序显示的;
系列值:就是每个系列的值;
汇总方式:对系列值的计算方式。
图表样式设置
标题设置
选中图表,在设计器右侧上方会出现图表属性表,选择图表属性表-样式标题,增加图表标题
系列标签设置
选择图表属性表-样式标签,勾选标签,显示出每个系列的值:
保存模板
图表的背景一般是精心设计的它有一定的梯度、网格线、号码标签和月份名称等等,如果直接通过JavaScript进行绘制可能需数十行或上百行的代码。但是如果我们直接通过Canvas直接创建一个背景图。我们只需要在其他的软件如PS上绘制好一个背景图,然后加载到Canvas上就可以了。
!DOCTYPE html
html
head
meta charset="utf-8"
title绘制图表/title
/head
body
div id="result-stub" class="well hidden"
canvas id="canvas" width="345" height="345"
p你的浏览器不支持canvas元素/p
/canvas
/div
script
// 1、要绘制图表首先我们要获取到canvas对象以及具有图表背景的图片对象。
var
canvas = document.getElementById('canvas'),
context = null;
context = canvas.getContext('2d');
var img = new Image();
img.src ='chart-background.png';//这里是一张具有图表背景的图片
// 2、绘制一个具有图表背景的图片后再根据要绘制的曲线图各个点在canvas是中的坐标绘制直线。
img.onload = function() {
//绘制图片
context.drawImage(img, 0, 0);
//绘制直线
context.beginPath();
context.moveTo(70, 105);
context.lineTo(105, 132);
context.lineTo(142, 250);
context.lineTo(176, 175);
context.lineTo(212, 145);
context.lineTo(245, 197);
context.lineTo(280, 90);
context.stroke();
}
/script
script src="jquery.js"/script
/body
/html
3、本示例的最终绘制效果如下:这样一个曲线图表就绘制出来的,其他的图表也可以用类似的方法进行绘制。
这些都是有关于HTML5新特性的一些应用。给你推荐一个教程网站秒秒学,该网站上有关于HTML5新特性的讲解。
FineReport是公认效果比较好的html5图表,而且是自主研发的,二次开发也很方便,交互效果很赞,而且稳定,移动端的效果也很不错,远甩其他的图表几条街
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流