ECharts顯示百分比(小數轉百分比)


后台數據傳遞給前端是小數格式,例如:0.2248 

前端顯示要求為:22.48%

方法,設置tooltip.formatter和yAxis.axisLabel.formatter,兩個分別是提示語格式化和Y軸標簽格式化。

示例:

//初始化echart
        var myChart = echarts.init(document.getElementById('chartArea'));

//初始配置
var option = {
            title: {
                text: ''
            },
            tooltip: {
                formatter:null
            },
            legend: {
                data:['新增用戶數']
            },
            grid: {
                left: '3%',
                right: '4%',
                bottom: '4%',
                containLabel: true
            },
            toolbox: {
                feature: {
                    saveAsImage: {}
                }
            },
            xAxis: {
                axisLabel:{
                    interval:0,
                    rotate:0
                },
                boundaryGap: false,
                data: []
            },
            yAxis: {
                axisLabel:{
                    formatter:null
                }
            },
            series: []
        };

//查詢數據后,更新配置
option.xAxis.data = chartData.xAxisData;
option.legend.data = chartData.legends[0];
option.series = chartData.series[0];
var dataFormat = chartData.dataFormats[0];
if(dataFormat == 'normal'){
        option.yAxis.axisLabel.formatter = null;
        option.tooltip.formatter = null;
}else if(dataFormat == 'percentage'){
        option.yAxis.axisLabel.formatter = function(value,index){
               return (value*100).toFixed(2)+'%';
        };
        option.tooltip.formatter = function (params) {
               return (params.value*100).toFixed(2)+'%';
        };
}
myChart.setOption(option,true);

 另外,如果圖上顯示了數值,則也需要格式化。格式化方法如下:

//4.x版本
option.series.label.formatter = function (params) {
                    return (params.value*100).toFixed(2)+'%';
                };

//3.x版本
option.series.label.normal.formatter = function (params) {
                    return (params.value*100).toFixed(2)+'%';
                };

//2.x版本
 option.series.itemStyle.normal.label.formatter = function (params) {
                    return (params.value*100).toFixed(2)+'%';
                };

 


免責聲明!

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



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