xCharts:基于D3的JavaScript圖表庫
xCharts是 一款基于D3的JavaScript圖表庫,xCharts的功能非常強大,不僅支持多種圖表類型,而且擁有豐富的圖表主題風格,并且非常漂亮。另 外,xCharts的設計非常靈活,配置也比較簡單,加載速度也還不錯,是一款開放性和可定制性都非常不錯的JavaScript圖表應用。
xCharts的特點
- 基于JavaScript,因此只要有瀏覽器即可使用,平臺兼容性不錯。
- 開放,可定制,因此配置相當靈活。
- 支持SVG格式,因此也可以方便地導出圖表數據。
xCharts的使用
簡單的柱形圖
JavaScript代碼:
var data = { "xScale": "ordinal", "yScale": "linear", "main": [ { "className": ".pizza", "data": [ { "x": "Pepperoni", "y": 4 }, { "x": "Cheese", "y": 8 } ] } ] }; var myChart = new xChart('bar', data, '#example1');
效果圖:
線性圖
JavaScript代碼:
var data = { "xScale": "time", "yScale": "linear", "type": "line", "main": [ { "className": ".pizza", "data": [ { "x": "2012-11-05", "y": 1 }, { "x": "2012-11-06", "y": 6 }, { "x": "2012-11-07", "y": 13 }, { "x": "2012-11-08", "y": -3 }, { "x": "2012-11-09", "y": -4 }, { "x": "2012-11-10", "y": 9 }, { "x": "2012-11-11", "y": 6 } ] } ] }; var opts = { "dataFormatX": function (x) { return d3.time.format('%Y-%m-%d').parse(x); }, "tickFormatX": function (x) { return d3.time.format('%A')(x); } }; var myChart = new xChart('line', data, '#example3', opts);
效果圖:
動畫柱形圖
JavaScript代碼:
var errorBar = { enter: function (self, storage, className, data, callbacks) { var insertionPoint = xChart.visutils.getInsertionPoint(9), container, // Map each error bar into 3 points, so it's easier to draw as a single path // Converts each point to a triplet with y from (y - e) to (y + e) // It would be better to use the `preUpdateScale` method here, // but for this quick example, we're taking a shortcut eData = data.map(function (d) { d.data = d.data.map(function (d) { return [{x: d.x, y: d.y - d.e}, {x: d.x, y: d.y}, {x: d.x, y: d.y + d.e}]; }); return d; }), paths; // It's always a good idea to create containers for sets container = self._g.selectAll('.errorLine' + className)
xChart.setVis('error', errorBar);
var data = { "xScale": "ordinal", "yScale": "linear", "main": [ { "className": ".errorExample", "data": [ { "x": "Ponies", "y": 12 }, { "x": "Unicorns", "y": 23 }, { "x": "Trolls", "y": 1 } ] } ], "comp": [ { "type": "error", "className": ".comp.errorBar", "data": [ { "x": "Ponies", "y": 12, "e": 5 }, { "x": "Unicorns", "y": 23, "e": 2 }, { "x": "Trolls", "y": 1, "e": 1 } ] } ] };
效果圖:
總結
xCharts的功能相當強大,如果你在自己的Web應用中需要使用圖表,那么xCharts非常適合你,可以嘗試一下。
項目主頁:http://www.baiduhome.net/lib/view/home/1417939155886
譯文鏈接:http://www.codeceo.com/article/xcharts-d3-javascript-chart.html
翻譯作者:碼農網 – 小峰
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!