Echarts之懸浮框中的資料排序
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