2017-12-15 7 views
-1

Chart.js 차트의 Y 축 레이블은 돈의 가치이기 때문에 앞에 달러 기호가 있어야합니다.ChartJS를 사용하여 Y 축에 달러 기호

이 코드는 문서이지만 나를위한 기능은 없습니다.

var chart = new Chart(ctx, { 
    type: 'line', 
    data: data, 
    options: { 
     scales: { 
      yAxes: [{ 
       ticks: { 
        // Include a dollar sign in the ticks 
        callback: function(value, index, values) { 
         return '$' + value; 
        } 
       } 
      }] 
     } 
    } 
}); 

내 결과는 다음과 같습니다. 'Before'는이 코드가 없으면 'after'가 표시됩니다. 분명히 값 앞에 $을 추가하는 것이 아니라 다른 것이 발생하고 있습니다.

어떻게 해결할 수 있습니까?

+0

를 그냥 값 라운드! – lilezek

+0

동의하지만 때로는 네 번째 십진법에서 그리고 때로는 수천에서 반올림해야합니다. – yoeriboven

답변

-1

여기서 문제는 chart.js가 문자열을 반올림하지 않는다는 것입니다.

문자열에 숫자를 추가하면 JavaScript가 자동으로 변환하므로 정밀도를 제어 할 수 없습니다.

당신은 당신의 문제를 해결하기 위해 toFixed를 사용할 수 있습니다

// Define wherever decimals: 
const decimals = 3; 
// ... 
var chart = new Chart(ctx, { 
    type: 'line', 
    data: data, 
    options: { 
     scales: { 
      yAxes: [{ 
       ticks: { 
        // Include a dollar sign in the ticks 
        callback: function(value, index, values) { 
         return '$' + value.toFixed(decimals); 
        } 
       } 
      }] 
     } 
    } 
}); 
+0

예. 차트가로드 될 때마다 변수의 소수점이 변경됩니다. 동적 인 데이터입니다. – yoeriboven

+0

@yoeriboven은 소수점 이하 자릿수를 바꿀 필요가있을 때마다 단지 소수 자릿수를 바꿉니다. – lilezek

+0

@yoeriboven 당신이 downvote를했는지 모르겠지만 어떤 종류의 대답을 기대 했습니까? 'Chart.js'는 당신 안의 문자열 안에있는 숫자를 마술처럼 구사하지 않습니다 ... – lilezek