HTML5 进阶(7)—Canvas图表插件 chart.js的基础使用以及其他图表插件推荐

本文介绍了HTML5 Canvas图表插件,重点讲解了chart.js的使用,包括官网下载、创建简单图表、图表类型以及配置。同时推荐了chartist.js和HighCharts.js,chartist.js配置简单,采用SVG格式,而HighCharts.js具有强大的浏览器兼容性和丰富的图表类型。
摘要由CSDN通过智能技术生成

Canvas图表插件

推荐三种比较好用的。

  • chart.js 灵活、可个性化设置图表样式的js图表插件
  • chartist.js 配置简单,只需要设置数据即可,包是最小的。
  • HighCharts.js 浏览器兼容性最强(有中文文档)

一、chart.js

chart.js是简单而灵活的javascript图表插件,底层封装了canvas,而且是复合目前主流的响应式。

官网下载chart.js

进入官网: http://www.chartjs.org

在这里插入图片描述
选择版本
在这里插入图片描述
在这里插入图片描述
dist下的就是chart.js脚本
在这里插入图片描述

Chart.js有两种不同的版本。常规版本的Chart.js和 Chart.min.js,附带chart.js库的同时还带着颜色解析器。如果你想使用这个版本并且在你的图表中使用时间轴,你需要在安装Chart.js之前安装上Moment.js。

而另一个版本Chart.bundle.js 和Chart.bundle.min.js早就包含了Moment.js 。你唯一需要注意的就是两个版本只能安装一个,否则会引起错误。


1.创建一个简单的图表

chart.js目前有两种版本1.0版本和2.0版本,两个版本创建图表的方式有区别。以下使用的是chart.js的2.0版本。

2.0版本

该方式是2.0版本新增的方式。

有4种方式获取<canvas>元素,任意一种都行,建议使用第二种。

var ctx = document.getElementById("myChart");	//dom
var ctx = document.getElementById("myChart").getContext("2d");	//dom
var ctx = $("#myChart");	//jquery

var ctx = "myChart";	//建议不要使用

使用chart.js

<canvas id="myChart" width="400" height="400"></canvas>
<script>
var ctx = document.getElementById("myChart").getContext("2d");
var myChart = new Chart(ctx, {
    
    type: 'bar',	//图片类型
    data: {
    },		//数据和样式
    options: {
    }		//图表的配置
});
</script>

1.0版本

该方式是1.0版本的创建方法,在2.0版本中也可以使用。

<canvas id="myChart" width="400" height="400"></canvas>
<script>
var ctx = document.getElementById("myChart");

var myChart = Chart.bar(ctx, {
    
    data: {
    },		//图表数据和样式
    options: {
    }		//图表的配置
});
</script>
  • bar 只是图表的类型,也就是2.0版本中的type

2.图表

chart.js提供了图表类型中常用的几种:

  • line 折线图
  • bar 柱状图
  • radar 雷达图
  • doughnut 环状图
  • pie 饼状图
  • polarArea 极地区域图
  • bubble 气泡图
  • 混合图

(1)line 折线图

在这里插入图片描述

var ctx = document.getElementById('canvas').getContext('2d');
var chart = new Chart(ctx,{
   
	type: 'line',
	data:{
   
		labels: ['一月','二月','三月','四月','五月','六月','七月','八月','九月','十月','十一月','十二月'],
		datasets: [
			{
   
				label: '红线',
				data: [65,21,34,67,56,12,54,78,90,10,12,76],
				borderColor: 'rgba(255,0,0,1)',
				backgroundColor: 'rgba(255,0,0,0.5)',
				fill: false,
				lineTension: 0,
			},
			{
   
				label: '蓝线',
				data: [34,80,29,76,23,89,12,67,77,12,94,45],
				borderColor: 'rgba(75,193,193,1)',
				backgroundColor: 'rgba(75,193,193,1)',
				fill: false,
				lineTension: 0,
			}
		],
	},
	options:{
   

	}
});

dataset中常用的属性

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>折线图</title>
    <script src="https://cdn.bootcss.com/Chart.js/2.5.0/Chart.js"></script>
</head>
<body>
<canvas id="myChart"></canvas>
<script>
    var ctx = document.getElementById("myChart").getContext("2d");

    // 设置数据内容
    var data = {
    
        // 设置图表中水平轴显示的内容
        labels: ["January", "February", "March", 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值