1. 程式人生 > 實用技巧 >Echarts 中常用的方法

Echarts 中常用的方法

echarts常用的方法
關於ECharts圖表的例項化方式和Highcharts圖表的例項化方法有些類似,都是通過給其物件提供一個option,option的結構如同json的結構一樣,只是一些屬性少了雙引號罷了。

縱觀ECharts圖表例項化的API,主要有一下幾個相關的例項化方法:

1、setOption(Object option,{boolean = true} notMerge)

引數:

1)、Object型別的引數 option,表示圖表資料結構 ,形如:

 

 
1.var option  = {
2.                title: {
3.                    text: "我的第一個ECharts圖表示例"
4.                },
5. tooltip: { 6. trigger: 'axis' 7. } 8. }; 2)、boolean notMerge,表示是否合併option。預設為false,可以不設定。 描述: 萬能介面,配置圖表例項任何可配置選項(詳見option),多次呼叫時option選項是預設是合併(merge)的,如果不需求,可以通過notMerger引數為true阻止與上次option的合併。 2、getOption() 描述: 返回內部持有的當前顯示option克隆
3、setSeries(Array series,{boolean=}notMerge) 引數: 1)、Array型別的series序列資料,形如: 01.var Array seriesList = new Array(); 02. 03.var seriesObj = new seriesObj(); 04.seriesObj.name = "蒸發量"; 05.seriesObj.type = "line"; 06.seriesObj.data = [2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4, 3.3]; 07.
08.//設定series 09.myChart.setSeries(seriesList,false); 2)、boolean notMerge 表示是否合併series,預設為false,可以不設定。 描述: 資料介面,驅動圖表生成的資料內容,效果等同呼叫setOption({series:{...}}) 4、getSeries() 描述: 返回內部持有的當前顯示series克隆,效果同return getOption().series 5、addData(....) 引數: 1)、單組資料引數 11)、{number} seriesIdx :表示給哪一條series新增資料,series腳標從0開始; 12)、{number | Object} data; 13)、{boolean=} isHead ; 14)、{boolean=} dataGrow; 15)、{string=} additionData; 2)、多組資料引數 其實就是多個單組資料的形成的集合或者陣列{Array} params 描述: 動態資料介面 seriesIdx 系列索引 data 增加資料 isHead 是否隊頭加入,預設,不指定或false時為隊尾插入 dataGrow 是否增長資料佇列長度,預設,不指定或false時移出目標陣列對位資料 additionData 是否增加類目軸(餅圖為圖例)資料,附加操作同isHead和dataGrow 多組資料新增時引數為: params == [[seriesIdx, data, isHead, dataGrow, additionData], [...]] 6、on(string eventName,function eventListner) 描述: 事件繫結,支援事件有:REFRESH,RESTORE,CLICK,HOVER,DATA_CHANGED,MAGIC_TYPE_CHANGED,DATA_VIEW_CHANGED,DATA_ZOOM,DATA_RANGE,LEGEND_SELECTED,MAP_SELECTED 示例程式碼形如: 1.//ECharts圖表的click事件監聽 2.myChart.on("click", function () { 3. alert("你點選我了!"); 4.}); 7、un(string eventName,function eventListner) 描述: 解除某個事件的繫結,示例程式碼形如: 1.myChart.un("click", function () { 2. alert("悲劇,你登出我了!"); 3.}); 8、showLoading(Object loadingOption) 描述: 過渡控制(詳見loadingOption),顯示loading(讀取中)程式碼片段形如: 01.//圖表顯示提示資訊 02.myChart.showLoading({ 03. text: "圖表資料正在努力載入...", 04. x: "center", 05. y: "center", 06. textStyle: { 07. color:"red", 08. fontSize:14 09. }, 10. effect:"spin" 11.}); 注意: 9、hideLoading() 描述: 隱藏圖表資料載入過度提示資訊,示例程式碼: 1.myChart.hideLoading(); 10、getZrender() 描述: 獲取當前圖表所用ZRender例項,可用於新增額外圖形或進行深度定製,zrender介面詳見ZRender 示例程式碼如下所示: 1.nyChart.getZrender(); 11、getDataURL(string imgType) 描述: 獲取當前圖表的Base64圖片dataURL,imgType 圖片型別,支援png|jpeg,預設為png 示例程式碼如下所示: 1.var imgUrl = myChart.getDataURL("png"); 12、getImage(string imgType) 描述: 獲取一個當前圖表的img,imgType 圖片型別,支援png|jpeg,預設為png,示例程式碼片段: 1.//前端匯出圖表圖片 2.var imgObj = myChart.getImage("jpeg"); 主要是拿到一個圖片物件,然後獲取其outerHTML屬性就是一個圖表image的html完整標籤,我們可以使用其直接顯示在頁面上。 13、resize() 描述: ECharts沒有繫結resize事件,顯示區域大小發生改變內部並不知道, 使用方可以根據自己的需求繫結關心的事件,主動呼叫resize達到區域更新的效果。 1.myChart.resize(); 14、refresh() 描述: 重新整理圖表,圖例選擇、資料區域縮放,拖拽狀態均保持。 1.myChart.refresh(); 15、restore() 描述: 還原圖表,各種狀態均被清除,還原為最初展現時的狀態。 16、clear() 描述: 清空繪畫內容,清空後例項可用,因為並非釋放示例的資源,釋放資源我們需要dispose() 1.myChart.clear(); 17、dispose() 描述: 釋放圖表例項,釋放後例項不再可用。 1.myChart.dispose(); 目前ECharts圖表的例項化主要包含當前十七個相關方法,後期不保證有補充的節奏,就目前來說,這十七個已經夠用了的。 注意: 1、以上方法的使用前提都是需要獲得ECharts初始化物件過後才可以進行,否則會產生報錯現象。