基于HTML5 Canvas的开源图形组件-ichartjs 入门篇

  ichartjs的官方网站为ichartjs(http://www.ichartjs.com/),目前最新版本为ichartjs v1.2 Released ,ichartjs的官方介绍:


ichartjs 是一款基于HTML5的图形库。使用纯javascript语言, 利用HTML5的canvas标签绘制各式图形。 ichartjs致力于为您的应用提供简单、直观、可交互的体验级图表组件。是WEB/APP图表展示方面的解决方案 。如果你正在开发HTML5的应用,ichartjs正好适合您。 ichartjs目前支持饼图、环形图、折线图、面积图、柱形图、条形图。ichartjs是基于Apache License 2.0协议的开源项目。


特新

种类:

demo

入门教程:

网址:http://www.ichartjs.com/gettingstarted/

1.构建项目环境

由于ichartjs是一个js库,所以只要将ichart.js加入你页面的head中就完成了ichartjs的运行环境。代码如下:

<script type="text/javascript" src="ichart.1.2.min.js"></script>

2.例子说明

我们利用2D柱形图来展示Hello World的各个字母在字母表中的位置的情况。我们将位置抽象为其高度。来以我们的方式来展示一个不一样的Hello World。

3.预览

我们先来看下例子最后的预览图,以便使你读起来没有那么乏味。如下图:

示例

4.代码说明
	//定义数据
	var data = [
		{name : 'H',value : 7,color:'#a5c2d5'},
	   	{name : 'E',value : 5,color:'#cbab4f'},
	   	{name : 'L',value : 12,color:'#76a871'},
	   	{name : 'L',value : 12,color:'#76a871'},
	   	{name : 'O',value : 15,color:'#a56f8f'},
	   	{name : 'W',value : 13,color:'#c12c44'},
	   	{name : 'O',value : 15,color:'#a56f8f'},
	   	{name : 'R',value : 18,color:'#9f7961'},
	   	{name : 'L',value : 12,color:'#76a871'},
	   	{name : 'D',value : 4,color:'#6f83a5'}
	 ];
	 $(function(){	
		var chart = new iChart.Column2D({
			render : 'canvasDiv',//渲染的Dom目标,canvasDiv为Dom的ID
			data: data,//绑定数据
			title : 'Hello World\'s Height In Alphabet',//设置标题
			width : 800,//设置宽度,默认单位为px
			height : 400,//设置高度,默认单位为px
			shadow:true,//激活阴影
			shadow_color:'#c7c7c7',//设置阴影颜色
			coordinate:{//配置自定义坐标轴
				scale:[{//配置自定义值轴
					 position:'left',//配置左值轴	
					 start_scale:0,//设置开始刻度为0
					 end_scale:26,//设置结束刻度为26
					 scale_space:2,//设置刻度间距
					 listeners:{//配置事件
						parseText:function(t,x,y){//设置解析值轴文本
							return {text:t+" cm"}
						}
					}
				}]
			}
		});
		//调用绘图方法开始绘图
		chart.draw();
	});
	
	//Html代码
	<div id='canvasDiv'></div>
 
5.结束语

本教程作为快速入门的向导,在本文档中所用到的配置属性,并不是图表中的全部属性,要配合ichartjs API进行阅读可以达到事半功倍的效果。阅读完本教程可以基本掌握ichartjs的大致功能以及使用方式,要想达到随心所欲的境界还是要多多进行实例练习,组件中提供了大量的实例是学习ichartjs好的途径。

6.相关资源

1).Hello World源代码

2).ichartjs入门简明教程v1.2.pdf

3).在线简易图表设计器

接下来,对上面的代码进行修改,来学习绘图的一些方法和配置

修改代码如下:


var chart = new iChart.Column2D({
                animation: true,//是否启用过渡动画,false则跳过过渡动画.(默认为false)
                animation_duration: 1500,//    指定动画持续时间,单位毫秒。此时间会与运行平台的FPS有关。(默认为1000)
                animation_timing_function: 'linear',//启用动画的动作函数(默认为'ease-in-out')
                background_color: '#f03030',//组件中背景颜色(填充色)的值
                border: {enable: true,color: '#5d6216',width: 1,radius: 5},//此处设置了开启边框配置项
                color: 'red',//组件中字体颜色的值。(默认为'black')
                color_factor: 2,//颜色因子,指示其颜色相对于背景色的变化量,值越大,变化值越大(越亮或者越暗)(默认为0.15)
                gradient: true,//True表示开启渐变效果.(默认为false)
                gradient_mode: 'LinearGradientDownUp',//背景渐变的样式
                legend: {enable: true,align: 'right',valign:'middle'},//图例的配置项
                //showpercent: true,
                tip: {enable: true,animation: true,fade_duration: 500},
                render : 'canvasDiv',//渲染的Dom目标,canvasDiv为Dom的ID
                data: data,//绑定数据
                title : 'Hello World\'s Height In Alphabet',//设置标题
                width : 800,//设置宽度,默认单位为px
                height : 400,//设置高度,默认单位为px
                shadow:true,//激活阴影
                shadow_color:'#c7c7c7',//设置阴影颜色
                coordinate:{//配置自定义坐标轴
                    scale:[{//配置自定义值轴
                         position:'left',//配置左值轴    
                         start_scale:0,//设置开始刻度为0
                         end_scale:26,//设置结束刻度为26
                         scale_space:2,//设置刻度间距
                         listeners:{//配置事件
                            parseText:function(t,x,y){//设置解析值轴文本
                                return {text:t+" cm"}
                            }
                        }
                    }]
                }
            });
            //调用绘图方法开始绘图
            chart.draw();

将源代码这中的chart进行替换,效果如下图:
修改
自己也可通过注释掉配置项或修改其值进行变化,达到自己想要的效果。

其他的配置可参考官方的文档和代码示例。

希望各位批评指教!!!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值