Chart.js是一个简单、面向对象、为设计者和开发者准备的图表绘制工具库。它非常简单帮你展现各种数据的图表展现形式,我们今天看看如何引入和基本的操作,并用它绘制一个制曲线图(Line chart)。

Chart.js特性

1、6种图表类型

Chart.js帮你用不同的方式让你的数据变得可视化。每种类型的图表都有动画效果,并且看上去非常棒,即便是在retina屏幕上。

◆ 曲线图(Line charts)

◆ 柱状图(Bar charts)

◆ 雷达图或蛛网图(Radar charts)

◆ 饼图(Pie charts)

◆ 极地区域图(Polar area charts)

◆ 环形图(Doughnut charts)

2、基于HTML5

Chart.js基于HTML5 canvas技术,支持所有现代浏览器,并且针对IE7/8提供了降级替代方案。

3、简单、灵活

Chart.js不依赖任何外部工具库,轻量级(压缩之后仅有4.5k),并且提供了加载外部参数的方法。

引入Chart.js文件

首先我们需要在页面中引入Chart.js文件。此工具库在全局命名空间中定义了Chart变量。

创建图表

为了创建图表,我们要实例化一个Chart对象。为了完成前面的步骤,首先需要需要传入一个绘制图表的2d context。以下是案例。

Html:

Javascript:

//Get the context of the canvas element we want to select

var ctx = document.getElementById("myChart").getContext("2d");

var myNewChart = new Chart(ctx).PolarArea(data);

我们还可以用jQuery获取canvas的context。首先从jQuery集合中获取我们需要的DOM节点,然后在这个DOM节点上调用 getContext("2d") 方法。

Javascript:

//Get context with jQuery - using jQuery's .get() method.

var ctx = $("#myChart").get(0).getContext("2d");

//This will get the first returned node in the jQuery collection.

var myNewChart = new Chart(ctx);

当我们完成了在指定的canvas上实例化Chart对象之后,Chart.js会自动针对retina屏幕做缩放。

Chart对象设置完成后,我们就可以继续创建Chart.js中提供的具体类型的图表了。下面这个案例中,我们将展示如何绘制一幅极地区域图(Polar area chart)。

Javascript:

new Chart(ctx).PolarArea(data,options);

曲线图(Line chart)

简介

曲线图就是将数据标于曲线上的一种图表。

一般用于展示趋势数据,和比较两组数据集。

使用案例

Javascript:

new Chart(ctx).Line(data,options);

数据结构

Javascript:

var data = {

labels : ["January","February","March","April","May","June","July"],

datasets : [

{

fillColor : "rgba(220,220,220,0.5)",

strokeColor : "rgba(220,220,220,1)",

pointColor : "rgba(220,220,220,1)",

pointStrokeColor : "#fff",

data : [65,59,90,81,56,55,40]

},

{

fillColor : "rgba(151,187,205,0.5)",

strokeColor : "rgba(151,187,205,1)",

pointColor : "rgba(151,187,205,1)",

pointStrokeColor : "#fff",

data : [28,48,40,19,96,27,100]

}

]

}

图表参数

Javascript:

Line.defaults = {

//Boolean - If we show the scale above the chart data

scaleOverlay : false,

//Boolean - If we want to override with a hard coded scale

scaleOverride : false,

//** Required if scaleOverride is true **

//Number - The number of steps in a hard coded scale

scaleSteps : null,

//Number - The value jump in the hard coded scale

scaleStepWidth : null,

//Number - The scale starting value

scaleStartValue : null,

//String - Colour of the scale line

scaleLineColor : "rgba(0,0,0,.1)",

//Number - Pixel width of the scale line

scaleLineWidth : 1,

//Boolean - Whether to show labels on the scale

scaleShowLabels : false,

//Interpolated JS string - can access value

scaleLabel : "",

//String - Scale label font declaration for the scale label

scaleFontFamily : "'Arial'",

//Number - Scale label font size in pixels

scaleFontSize : 12,

//String - Scale label font weight style

scaleFontStyle : "normal",

//String - Scale label font colour

scaleFontColor : "#666",

///Boolean - Whether grid lines are shown across the chart

scaleShowGridLines : true,

//String - Colour of the grid lines

scaleGridLineColor : "rgba(0,0,0,.05)",

//Number - Width of the grid lines

scaleGridLineWidth : 1,

//Boolean - Whether the line is curved between points

bezierCurve : true,

//Boolean - Whether to show a dot for each point

pointDot : true,

//Number - Radius of each point dot in pixels

pointDotRadius : 3,

//Number - Pixel width of point dot stroke

pointDotStrokeWidth : 1,

//Boolean - Whether to show a stroke for datasets

datasetStroke : true,

//Number - Pixel width of dataset stroke

datasetStrokeWidth : 2,

//Boolean - Whether to fill the dataset with a colour

datasetFill : true,

//Boolean - Whether to animate the chart

animation : true,

//Number - Number of animation steps

animationSteps : 60,

//String - Animation easing effect

animationEasing : "easeOutQuart",

//Function - Fires when the animation is complete

onAnimationComplete : null

}

用js绘制html5数值曲线,Chart.js 教程绘制曲线图(Line chart)相关推荐

  1. 用计算机绘制颗粒级配曲线,巧用excel绘制颗粒级配曲线与自动计算粒组特征参数...

    巧用excel绘制颗粒级配曲线与自动计算粒组特征参数 摘要:颗粒分析试验为基础土工试验之一,其成果对土样定名及物理力学性质的判断都有着重要意义.由于试验原始数据繁多,处理步骤繁杂,而以往试验室对颗分数 ...

  2. 原生html js css绘制折现图,HTML5教程 Chart.js自定义提示折线图

    本篇教程探讨了HTML5教程 Chart.js自定义提示折线图,希望阅读本篇文章以后大家有所收获,帮助大家HTML5+CSS3从入门到精通 . < var randomScalingFactor ...

  3. html5绘制股票图形,股票数据分析(五):绘制股票k线图(js+canvas + Python + json)

    本文介绍:利用 js+canvas 绘制股票k线图 HTML5 标签用于绘制图像(通过脚本,通常是 JavaScript). 不过, 元素本身并没有绘制能力(它仅仅是图形的容器) - 您必须使用脚本来 ...

  4. html5 canvas图表,Chart.js基于Canvas画布的HTML5统计图表库 - 资源分享

    Chart.js 是一个简单.面向对象.为设计者和开发者准备的图表绘制工具库.可以绘制柱状图.热点图.曲线图等,使用HTML5中的Canvas画布,支持原生的和jQuery的调用方法. 特点 6种图表 ...

  5. HTML5——Canvas图表插件 chart.js的基础使用

    Canvas图表插件 推荐三种比较好用的. chart.js 灵活.可个性化设置图表样式的js图表插件 chartist.js 配置简单,只需要设置数据即可,包是最小的. HighCharts.js ...

  6. chart.js绘制精美的数据化图形--入门示例

    参考:http://think.zvan.com.cn/code/js/2014/0607/247.html 这个库基于html5,在360极速浏览器和firefox中测试通过. <html&g ...

  7. html5设计app数据js库,12个流行的HTML5 JS图形绘制库

    众多周知,图形和图表要比文本更具表现力和说服力.图表是数据图形化的表示,通过形象的图表来展示数据,比如条形图,折线图,饼图等等.可视化图表可以帮助开发者更容易理解复杂的数据,提高生产的效率和 Web ...

  8. html5无法绘制线条,Html5画布 - 使用fabric.js绘制完美线条或不使用

    我正在创建一个游戏,我需要在不同类型的屏幕分辨率和缩放下实现HTML5上的完美画布线.Html5画布 - 使用fabric.js绘制完美线条或不使用 很容易理解我说的,简单地粘贴在两个不同的代码转换成 ...

  9. chart.js 饼图显示百分比_实战PyQt5: 135-数据可视化之QChart绘制饼图

    饼图是数据可视图表的基本类型,在QChart中,QPieSeries, QPieSlice处理饼图的绘制. QPieSeries QPieSeries类以饼图形式显示数据.饼图系列由定义为QPieSl ...

最新文章

  1. 吴恩达老师,被曝靠「教书」实现首个IPO上市,估值50亿美元
  2. html button 隐藏_java servlet与html数据交互初体验
  3. 【高级数据结构】[SPOJ QTREE]树链剖分/动态树各一模板
  4. 如何使用be动词来确认请求_12
  5. 【机器学习】【计算机视觉】非常全面的图像数据集《Actions》
  6. 2018年宝鸡市三检文科数学题目解答
  7. php查询过滤字段,php 字符过滤类,用于过滤各类用户输入的数据
  8. 48小时备考TOGAF经验分享
  9. 单片机(ISIS 7 Professional):交通灯代码项目
  10. 流利阅读12.16 ‘Aquaman’ is already a box office titan
  11. 电子文档迎接“双轨制”
  12. windows server 2008解决 远程桌面多帐号同时登录
  13. 金融知识小科普 - 宽基指数
  14. 电脑公司 雨林.番茄.深度.龙帝国.系统之家.系统光盘收录大全
  15. 一文回顾区块链修订WTO电子商务禁令的影响
  16. macbook proa1708_苹果笔记本a1708是哪一款?
  17. 利用Anaconda创建虚拟环境
  18. [智能座舱]小鹏G9语音新功能介绍与分析
  19. STM32的USART编程
  20. 二进制 真值 原码 反码 补码

热门文章

  1. linux清理python缓存文件,文件缓存/禁用特定于Linux的缓冲区
  2. 【观察】驱动金融科技再创新,迎接金融服务新时代
  3. 按键精灵学习笔记Day1
  4. leetcode链表题(大致是由易到难
  5. 关于word修改页码
  6. 5个在线制作APP开发工具介绍和APP公司酷站欣赏
  7. Microsoft365和普通Office之间有什么区别 如何选择?
  8. Java输入数字转化为中文读法
  9. python 数据、曲线平滑处理——基于Numpy.convolve实现滑动平均滤波——详解
  10. 计算机组装与维护常见问答题,计算机组装与维护常见问答题