Echarts非常強大,配置也非常的多,有很多細節需要深入研究。詳解一下關於懸浮框中的數據排序問題 懸浮框的數據排序預設是根據series中的數據位置排序的,在我們想自定義排序時,在echarts的配置中有一個tooltip 以下為數據降序的代碼: tooltip = { trigger: 'axi ...
Echarts非常強大,配置也非常的多,有很多細節需要深入研究。詳解一下關於懸浮框中的數據排序問題
懸浮框的數據排序預設是根據series中的數據位置排序的,在我們想自定義排序時,在echarts的配置中有一個tooltip
以下為數據降序的代碼:
tooltip = {
trigger: 'axis',
formatter: (params) => { // params為懸浮框上的全部數據
const newParams = [];
let paramsData = _.sortBy(params, 'value'); // 根據value值升序,_.sortBy為lodash的方法
paramsData = _.reverse(paramsData); // 將數據降序,_.reverse為lodash的方法
paramsData.forEach((p) => {
// p.marker為對應數據線的顏色的圓點
// p.seriesName為對應數據的數據名稱
// p.value為對應數據的值
const cont = p.marker + ' ' + p.seriesName + ': ' + p.value + '<br/>';
newParams.push(cont);
});
return _.join(newParams, ''); // 這裡是需要將數組轉化成字元串顯示,如果不轉化,每個數據前面都會出現一個逗號(,),_.join為lodash的方法
}
}
主要是在formatter中設置,formatter可以接受兩種形式,字元串模版和回調函數
回調函數可以根據需求相應處理數據
字元串模版可以自定義顯示形式
字元串模版有多中,根據具體是什麼圖,官網詳細 介紹了這幾種類型
鏈接:http://www.echartsjs.com/option.html#tooltip.formatter