強(qiáng)大的JavaScript響應(yīng)式圖表Chartist.js的使用
Chartist.js是一個(gè)非常簡(jiǎn)單而且實(shí)用的JavaScript前端圖表生成器,它支持SVG格式,圖表數(shù)據(jù)轉(zhuǎn)換十分靈活,同時(shí)也支持多種圖表展現(xiàn)形式,不失為一款前端開(kāi)發(fā)者的開(kāi)發(fā)利器。
Chartist.js的特點(diǎn)
- 配置十分簡(jiǎn)單,可以很方便地轉(zhuǎn)換各種圖表數(shù)據(jù)格式。
- CSS和JavaScript分離,因此代碼比較簡(jiǎn)潔,使用就相對(duì)方便。
- 使用SVG格式,因此Chartist.js可以很靈活的在Web頁(yè)面上應(yīng)用。
- 響應(yīng)式圖表,支持不同的瀏覽器尺寸和分辨率。
- 支持自定義 SASS 架構(gòu)。
Chartist.js的使用方法
首先你需要在其官方網(wǎng)站中下載JS包和CSS包,并且在頁(yè)面中引用它們:
<link rel="stylesheet" href="bower_components/chartist/dist/chartist.min.css" rel="external nofollow" > <script src="bower_components/chartist/dist/chartist.min.js">
下面我們對(duì)一些常用的圖表類(lèi)型做一個(gè)簡(jiǎn)單的介紹。
帶Tooltip提示的線形圖
效果圖:
JavaScript代碼:
new Chartist.Line('.ct-chart', { labels: ['1', '2', '3', '4', '5', '6'], series: [ { name: 'Fibonacci sequence', data: [1, 2, 3, 5, 8, 13] }, { name: 'Golden section', data: [1, 1.618, 2.618, 4.236, 6.854, 11.09] } ] }); var easeOutQuad = function (x, t, b, c, d) { return -c * (t /= d) * (t - 2) + b; }; var $chart = $('.ct-chart'); var $toolTip = $chart .append('<div class="tooltip"></div>') .find('.tooltip') .hide(); $chart.on('mouseenter', '.ct-point', function() { var $point = $(this), value = $point.attr('ct:value'), seriesName = $point.parent().attr('ct:series-name'); $point.animate({'stroke-width': '50px'}, 300, easeOutQuad); $toolTip.html(seriesName + '<br>' + value).show(); }); $chart.on('mouseleave', '.ct-point', function() { var $point = $(this); $point.animate({'stroke-width': '20px'}, 300, easeOutQuad); $toolTip.hide(); }); $chart.on('mousemove', function(event) { $toolTip.css({ left: (event.offsetX || event.originalEvent.layerX) - $toolTip.width() / 2 - 10, top: (event.offsetY || event.originalEvent.layerY) - $toolTip.height() - 40 }); });
多維度的柱形圖
效果圖:
JavaScript代碼:
new Chartist.Bar('.ct-chart', { labels: ['First quarter of the year', 'Second quarter of the year', 'Third quarter of the year', 'Fourth quarter of the year'], series: [ [60000, 40000, 80000, 70000], [40000, 30000, 70000, 65000], [8000, 3000, 10000, 6000] ] }, { seriesBarDistance: 10, axisX: { offset: 60 }, axisY: { offset: 80, labelInterpolationFnc: function(value) { return value + ' CHF' }, scaleMinSpace: 15 } });
簡(jiǎn)單的餅圖
效果圖:
JavaScript代碼:
var data = { labels: ['Bananas', 'Apples', 'Grapes'], series: [20, 15, 40] }; var options = { labelInterpolationFnc: function(value) { return value[0] } }; var responsiveOptions = [ ['screen and (min-width: 640px)', { chartPadding: 30, labelOffset: 100, labelDirection: 'explode', labelInterpolationFnc: function(value) { return value; } }], ['screen and (min-width: 1024px)', { labelOffset: 80, chartPadding: 20 }] ]; new Chartist.Pie('.ct-chart', data, options, responsiveOptions);
更多關(guān)于Chartist.js的用法,可以前往其官方網(wǎng)站進(jìn)行查閱,包括詳細(xì)地API。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
詳解JavaScript實(shí)現(xiàn)監(jiān)聽(tīng)路由變化
前端實(shí)現(xiàn)路由變化主要有兩種方式,本文主要介紹了這兩種方法的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-08-08JavaScript中正則表達(dá)式判斷匹配規(guī)則及常用方法
JS作為一門(mén)常用于web開(kāi)發(fā)的語(yǔ)言,必然要具備正則這種強(qiáng)大的特性,本文將對(duì)JS中的正則用法及常用函數(shù)進(jìn)行一番總結(jié)2017-08-08JavaScript中表格文件導(dǎo)出的實(shí)現(xiàn)示例
本文主要介紹了JavaScript中表格文件導(dǎo)出的實(shí)現(xiàn)示例,JavaScript中的Blob對(duì)象和a標(biāo)簽的download屬性是實(shí)現(xiàn)這一功能的關(guān)鍵,本文就來(lái)詳細(xì)的介紹一下,感興趣的可以了解一下2024-01-01Typescript 函數(shù)重載的實(shí)現(xiàn)
本文主要介紹了Typescript 函數(shù)重載的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04bootstrap datepicker 與bootstrapValidator同時(shí)使用時(shí)選擇日期后無(wú)法正常觸發(fā)校驗(yàn)的解
這篇文章主要介紹了bootstrap datepicker 與bootstrapValidator同時(shí)使用時(shí)選擇日期后無(wú)法正常觸發(fā)校驗(yàn)的解決思路的相關(guān)資料,需要的朋友可以參考下2016-09-09