CanvasTranslate是一个基于HTML 元素的JavaScript库,主要提供了可视化渲染的解决方案。其最大的特点是支持多种外部数据源,并能够自动转换为可视化形式,在使用方面也非常方便。下面从多个方面对CanvasTranslate做详细的阐述。
一、CanvasTranslate常用API
1、canvastranslate(data,options):根据给定的数据源data和选项options创建一个可视化图表。
2、addControl(control):向图表中添加控制器控制。
3、getCanvas():获取对应的canvas画布对象。
4、update(data):更新图表的数据源。
5、resize():重新调整图表的尺寸。
二、CanvasTranslate的数据源
1、静态数据源:用户手动输入的静态数据源。
canvastranslate([
{x:0, y:50},
{x:50, y:100},
{x:100, y:50},
{x:150, y:150},
{x:200, y:100}
], {
chartType:'linechart',
title:'静态数据线图'
})
2、AJAX数据源:通过AJAX请求获取的动态数据源。
var data=[];
$.ajax({
url:'./data.json',
dataType:'json',
success:function(d){
data=d;
ct = canvasTranslate(data,{
type:'linechart',
title:'AJAX数据线图'
});
}
});
3、WebSocket数据源:通过WebSocket接收和传输数据。
var ct = CanvasTranslate([],{type:'barchart'});
var ws = new WebSocket('ws://localhost:1111/');
ws.onmessage = function(message){
data = JSON.parse(message.data);
ct.update(data);
};
三、CanvasTranslate的图表类型
1、折线图(linechart):主要用于绘制数据量随时间变化的曲线图。
canvastranslate([
{x:'6.1 7:43',y:23},
{x:'6.1 11:00',y:17},
{x:'6.1 14:00',y:12},
{x:'6.1 17:00',y:31},
{x:'6.2 7:00',y:22},
{x:'6.2 11:00',y:19},
{x:'6.2 14:00',y:16},
{x:'6.2 17:00',y:23}
],{
type:'linechart',
xLabel:'时间',
yLabel:'数据量',
title:'每天数据量'
});
2、饼图(piechart):主要用于比较不同项占总数的比例。
canvastranslate([
{name:'A',value:40},
{name:'B',value:20},
{name:'C',value:30},
{name:'D',value:10}
],{
type:'piechart',
title:'分布图'
});
3、柱状图(barchart):主要用于比较不同项之间的数量大小关系。
canvastranslate([
{x:'A',y:40},
{x:'B',y:20},
{x:'C',y:30},
{x:'D',y:10}
],{
type:'barchart',
xLabel:'项',
yLabel:'数量',
title:'分组图'
});
四、CanvasTranslate的插件扩展
1、Tooltip提示插件:鼠标在图表上时,弹出提示框提示当前数据。
(ct) => {
var showTooltip = function(x, y, contents){
$(''+contents+'原创文章,作者:CXWNL,如若转载,请注明出处:https://www.506064.com/n/361220.html
微信扫一扫
支付宝扫一扫