js 圖表插件 chartjs 2.4



PS:該圖表插件對手機端支持挺好
網上的文章大多數的參數都是老版本的過時的,最新api查看官網 http://www.chartjs.org/docs/ 


點擊 tags可以下載其它版本

使用方法

第一步下載   copy dist文件夾下面的資源文件到項目   接着引入 

   
   
   
           
  1. <script src="${baseURL}/js/3rd-plug/Chart.js-2.4.0/Chart.bundle.js" type="text/javascript"></script>
  2. <script src="${baseURL}/js/3rd-plug/Chart.js-2.4.0/utils.js" type="text/javascript"></script>


第二步 然后dom創建一個畫布元素設置高寬

   
   
   
           
  1. <div class="chartsdiv" id="chartsdiv">
  2. <canvas id="canvas" style="height:300px;" height='300'></canvas>
  3. </div>

第三步  js設置config 全局引用  option和data,然后初始化 config,方便以后數據data更新能通知報表更新數據,因為初始化存的是config引用,config每次更新的時候報表都會去取config,如果單獨初始化報表的時候直接給一個data數據,當data數據更改的時候,data的引用的指針改變,自然和報表初始化的時候的data指針不同,所以沒法更新

全局初始化config配置

   
   
   
           
  1. var config = {
  2. type:'line',
  3. options:{
  4. title:{display:true,text:'成交數據 單位(元)'},
  5. tooltips:{mode: 'index',intersect:false},
  6. type: 'line',
  7. scales: {
  8. xAxes: [{
  9. display: true,
  10. scaleLabel: {
  11. display: true,
  12. labelString: '月'
  13. }
  14. }],
  15. yAxes:[{
  16. display: true,
  17. scaleLabel: {
  18. display: true,
  19. labelString: '單位(元)'
  20. }
  21. }]
  22. }
  23. },
  24. data:{
  25. }
  26. }

初始化chartjs data是沒有數據的 做全局數據

   
   
   
           
  1. var ctx = document.getElementById("canvas").getContext("2d");
  2. $(function() {
  3. window.myLineChart = Chart.Line(ctx, config);
  4.     })

初始化數據傳入 更新報表

   
   
   
           
  1. function refeshCharts(areaFangjiaList){
  2. var xcategory = [];
  3. var ysaveprice = [];
  4. var esavgprice = [];
  5. $(areaFangjiaList).each(function(){
  6. xcategory.push(this.FDATE)
  7. ysaveprice.push(this.FisrtHandAvgPrice)
  8. esavgprice.push(this.SeondHandAvgPrice)
  9. })
  10. config.data={
  11. labels: xcategory,
  12. datasets: [{
  13. label: "一手均價",
  14. borderColor: window.chartColors.red,
  15. data: ysaveprice
  16. }, {
  17. label: "二手均價",
  18. borderColor: window.chartColors.blue,
  19. data: esavgprice
  20. }]
  21. }
  22. window.myLineChart.update();
  23. }




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM