后台數據傳遞給前端是小數格式,例如: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)+'%'; };