2016-06-08 13 views
21

Tôi đang sử dụng thư viện this để vẽ biểu đồ trong ứng dụng web của mình. Vấn đề là tôi có dấu thập phân trong trục y của tôi. Bạn có thể thấy điều đó trong hình ảnh bên dưới enter image description hereBỏ qua dấu thập phân trên trục y trong biểu đồJS

Có cách nào để hạn chế chỉ có số không?

Đây là mã của tôi

var matches = $("#matches").get(0).getContext("2d"); 

var data = { 
     labels: labelsFromCurrentDateTillLastWeek, 
     datasets: [ 
      { 
       label: "Last Weeks Matches", 
       fillColor: "rgba(220,220,220,0.2)", 
       strokeColor: "rgba(220,220,220,1)", 
       pointColor: "rgba(220,220,220,1)", 
       pointStrokeColor: "#fff", 
       pointHighlightFill: "#fff", 
       pointHighlightStroke: "rgba(220,220,220,1)", 
       data: result 
      } 
     ] 
    }; 

    var options = { 
     scaleLabel: function (label) { 
      return Math.round(label.value); 
     } 
    }; 

    var myLineChart = new Chart(matches, { 
     type: 'bar', 
     data: data, 
     options: options 

    }) 

Trả lời

54

trong chartjs 2.x bạn có thể vượt qua một lựa chọn cho một userCallback đến lĩnh vực yaxis đánh dấu. Trong này, bạn có thể kiểm tra nếu nhãn là một số nguyên

đây là một ví dụ

options = { 
    scales: { 
     yAxes: [{ 
      ticks: { 
       beginAtZero: true, 
       userCallback: function(label, index, labels) { 
        // when the floored value is the same as the value we have a whole number 
        if (Math.floor(label) === label) { 
         return label; 
        } 

       }, 
      } 
     }], 
    }, 
} 

fiddle example

+2

công trình như một sự quyến rũ! – mohsinali1317

10

lựa chọn khác là sử dụng tùy chọn fixedStepSize như sau:

options = { 
    scales: { 
     yAxes: [{ 
      ticks: { 
       fixedStepSize: 1 
      } 
     }], 
    }, 
}; 
+3

Điều này * nên * là đơn giản. Rất tiếc, cài đặt này ngăn không cho bỏ qua một số điểm nhất định khi có nhiều dữ liệu. Ví dụ: khi các giá trị từ 0 đến 1000, chart.js sẽ hiển thị tất cả các số nguyên từ 0 đến 1000 thay vì hiển thị, ví dụ: 0, 100, 200, v.v. – fracz

+0

Điều cần biết. Vì vậy, về bản chất, nó hoạt động ở nơi phạm vi của các giá trị được giới hạn cho những gì có thể được hiển thị hợp lý trong không gian có sẵn. –

Các vấn đề liên quan