項目中有個圖標類的需求,環形圖高亮第一條數據.要求第一條數據圖塊預設展示: 分析:想要獲得上圖效果需要一下條件 1,進入頁面可以觸發第1條數據的選中action 2,滑鼠指向別的圖塊時,展示選中數據的圖塊信息 3,滑鼠離開環形圖時,展示預設第一條數據 在echarts上找尋文檔得知: action ...
項目中有個圖標類的需求,環形圖高亮第一條數據.要求第一條數據圖塊預設展示:
分析:想要獲得上圖效果需要一下條件
1,進入頁面可以觸發第1條數據的選中action
2,滑鼠指向別的圖塊時,展示選中數據的圖塊信息
3,滑鼠離開環形圖時,展示預設第一條數據
在echarts上找尋文檔得知:
action -> dispatchAction 可以手動觸發action.
通過[分析]得出的條件,我們可以對相應動作做出控制.
1,進入頁面可以觸發第1條數據的選中action
myChart.dispatchAction({type: 'highlight',seriesIndex: 0,dataIndex: 0});
type 觸發action類型
seriesIndex series索引
dataIndex 高亮數據索引
具體可以參考echarts官方文檔
註意,不可以使用 type: 'pieSelect
',該種類型會使得選中的色塊發生向外的位移,並且不會展示label內容.
2,滑鼠指向別的圖塊時,展示選中數據的圖塊信息,隱藏預設色塊高亮信息
myChart.on('mouseover',(v) => { if($scope.initFlag && v.dataIndex != 0){ myChart.dispatchAction({ type: 'downplay', seriesIndex: 0, dataIndex: 0 }); } });
註意:當滑鼠在預設色塊時,無需觸發取消高亮[downplay]事件
3,滑鼠離開環形圖時,展示預設第一條數據
myChart.on('mouseout',(v) => { if($scope.initFlag){ myChart.dispatchAction({type: 'highlight',seriesIndex: 0,dataIndex: 0}); } });
當滑鼠移除時,別忘記再次觸發餅圖的預設展示.
另外,如果想展示tooltip的話,用type = showTip 也是可以的.