圖表組件Chart.js是Bootstrap比較好用的組件之一,與一款收費的組件highchart類似,效果上來看免費與收費的產品相差還是有一點點的,不過功能上差不多能滿足我們項目的需要。下面這段JS腳本主要是為了方便生成一個圖表的配置而寫的方法
1 /** 2 * 獲取一個新的chart配置項 3 * @param color rgba顏色 4 * @param type 圖表類型:line,bar,radar,polarArea,pie,doughnut 5 * @param title 顯示圖表的標題 6 * @param label 圖表的標簽,鼠標移到圖表某個數據點時顯示的提示文字 7 * @param categories 一般是X軸的內容 8 * @param data 一般是Y軸的數據 9 * @returns 返回圖表的配置參數 10 */ 11 function getNewConfig(color,type,title,label,categories,data) 12 { 13 var background = color; 14 var config = { 15 type: type, 16 options: { 17 responsive: true, 18 legend: { 19 display: false, 20 position:'bottom' 21 }, 22 hover: { 23 mode: 'label' 24 }, 25 scales: { 26 xAxes: [{ 27 display: true, 28 scaleLabel: { 29 display: false, 30 labelString: 'Month' 31 } 32 }], 33 yAxes: [{ 34 display: true, 35 scaleLabel: { 36 display: false, 37 labelString: 'Value' 38 } 39 }] 40 }, 41 title: { 42 display: true, 43 text: title 44 } 45 } 46 }; 47 48 var dataset = { 49 label: label, 50 data: data, 51 fill: false, 52 borderDash: [5, 5], 53 borderColor : background, 54 backgroundColor : background, 55 pointBorderColor : background, 56 pointBackgroundColor : background, 57 pointBorderWidth : 1 58 }; 59 var data = { 60 labels:categories, 61 datasets: [dataset] 62 }; 63 config.data = data; 64 return config; 65 }
調用方法:
<canvas id="chart_weixinmember" height="100"></canvas>
1 var color = 'rgba(51,126,255,0.5)'; 2 var categories = ["2016-04-22","2016-04-23","2016-04-24","2016-04-25","2016-04-26","2016-04-27","2016-04-28"]; 3 var data = [0,0,0,0,1,0,0]; 4 var config = getNewConfig(color,'line','最近7天微信會員增長情況','當天新增微信會員',categories,data); 5 var ctx = document.getElementById("chart_weixinmember").getContext("2d"); 6 var weixinMemberCountChart = new Chart(ctx, config);
顯示的效果:
說明:使用上面的代碼需要引用Chart.js,
Chart中文網站以及文檔:
http://www.bootcss.com/p/chart.js/
http://www.bootcss.com/p/chart.js/docs/
Chart英文網站及文檔:
www.chartjs.org
www.chartjs.org/docs