繁体   English   中英

如何在图表JS的Y轴上应用美元符号?

[英]How to apply dollar sign in Y- axis in chart js?

我正在处理图表js,我想在Y轴上应用美元符号,因此我尝试了一些选项,但它不起作用,有人可以帮我吗,这是我的代码

function earning_one_time_purchase() {
        var monthsData = {
            labels: <?php echo $t->one_time_purchase_month_chart; ?>,
            datasets: [
                {
                    fillColor: "<?php echo $graph_color_code; ?>", //"rgba(172,194,132,0.4)",
                    strokeColor: "<?php echo $graph_line_color_code; ?>",
                    pointColor: "#fff",
                    pointStrokeColor: "#9DB86D",
                    data: <?php echo $t->one_time_purchase_amount_chart; ?>
                } 
            ],
        options: {
        scales: {
            yAxes: [{
                ticks: {
                // Include a dollar sign in the ticks
                callback: function(value, index, values) {
                    alert(value);
                    return '$' + value;
                }
                }
            }]   
            }
        }
        };
        var months = document.getElementById("eChart_1").getContext("2d");
        new Chart(months).Line(monthsData);
    }

如果使用的是Chart.js 1.x版,则可以使用scaleLabel键自定义刻度scaleLabel

var options = {
   scaleLabel: function(label){return  '$' + label.value}
};

请注意,在创建图表时,应将options对象作为第二个参数传递,而不是将其包含在monthsData

 const labels = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'June', 'July', 'Aug', 'Sept', 'Oct', 'Nov', 'Dec']; const initialData = [{'x':'Apr', 'y':40},{'x':'July', 'y':70},{'x':'Dec', 'y':120}]; const filledMonths = initialData.map((month) => month.x); const dataSet = labels.map(month => { const indexOfFilledData = filledMonths.indexOf(month); if( indexOfFilledData !== -1) return initialData[indexOfFilledData].y; return 0; }); var monthsData = { labels: labels, datasets: [ { label: "My First dataset", 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: dataSet } ] }; var options = { scaleLabel: function(label){return '$' + label.value} }; var ctx = document.getElementById("myChart").getContext("2d"); var chart = new Chart(ctx).Line(monthsData, options); 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/1.1.1/Chart.min.js"></script> <canvas id="myChart" width="300" height="300"></canvas> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM