一、相關js文件的引入
這里我們采用標簽式引入文件的方式,我們引入兩個js文件,一個是esl.js文件和一個echarts.js。
<script src="js/esl.js" type="text/javascript"></script> <script src="js/echarts.js" type="text/javascript"></script>
二、ECharts對象的初始化
通過文件esl.js內封裝好的require獲得echarts接口后可實例化圖表,echarts接口僅有一個方法init,執行init時傳入一個具備大小(如果沒有指定容器的大小將會按照0大小來處理即無法看到圖表)的dom節點(width、height可被計算得到即可,不一定可見)后即可實例化出圖表對象,圖表庫實現為多實例的,同一頁面可多次init出多個圖表。圖表實例可用方法見方法,引入ECharts后的的初始化代碼如下:
// 作為入口 require( [ 'echarts', 'echarts/chart/pie' ], //回調函數內執行圖表對象的初始化 function(ec) { var myChart = ec.init(document.getElementById('main')); myChart.setOption({...}); } ); // ----------------------------- // 非入口或再次使用,圖表已被加載注冊 require('echarts').init(dom).setOption({...}); // 如果需要再次使用ECharts的圖表實例,建議你還是保存init返回的圖表實例吧 var myChart = require('echarts').init(dom); myChart.setOption({...});
如果你不習慣於模塊化你也可以這樣進行初始化:
//定義一個全局的圖表對象 var ECharts; require(['echarts'], function(ec){ //將對象保存下來 ECharts = ec; }); // 是的,把echarts加載后保存起來作為命名空間使用 //----------- //接下來我們就可以進行圖表的init操作了 var myChart = ECharts.init(dom); myChart.setOption({....});
init方法說明如下:
名稱 | 參數 | 描述 |
---|---|---|
{ECharts} init | {dom} dom, {string | Object =} theme |
初始化接口,返回ECharts實例,其中dom為圖表所在節點,theme為可選的主題,內置主題('macarons', 'infographic')直接傳入名稱,自定義擴展主題可傳入主題對象。如: var myCharts = echarts.init(document.getElementById('main'), 'macarons'); |
注意事項:
1、再實例化之前請確保相關的js文件已經引入且路徑正確;
2、在執行圖表對象渲染方法init(dom)的時候,記住這里的dom是一個頁面容器元素的對象,請確保這個元素對象是存在的,否則執行了init(dom)方法時會報出尚未定義的錯誤;
3、dom元素一定要指定其大小,關於元素的大小我么可以通過css進行設置:
<div id="main" style="width:400px;height:300px;"></div>
也可以采用動態的javascript代碼設置其大小屬性值。