關於echart 圖表自適應問題的解決辦法

 <div id="divEnergy" style="width: 100%; height: 300px; border: 5px solid red; ">
 </div>

以上給echart 一個百分比的寬度  想達到自適應的效果html

當頁面沒有加載完,進行tab 切換的時候 ,表格變成以下效果ajax

 解決辦法json

  $.ajax({
                                type: "post",
                                async: false, //同步執行  
                                url: "getjson/GetChartDatasale.ashx?type=月&userid=" + document.getElementById("<%=hiduserid.ClientID %>").value,
                                dataType: "json", //返回數據形式爲json  
                                success: function (result) {
                                    if (result.status = 200) {
                                        //將返回的category和series對象賦值給options對象內的category和series  
                                        //由於xAxis是一個數組 這裏須要是xAxis[i]的形式  
                                        options.xAxis[0].data = result.category;
                                        options.series = result.series;
                                        options.legend.data = result.legend;
                                        // options.title.text = "fdsa";
                                        myEnergyChart.setOption(options);
                                        myEnergyChart.refresh();

                                        /* 7-28修復折線圖沒法自適應的問題*/
                                        window.onresize = myEnergyChart.resize;
                                    }
                                },
                                error: function (errorMsg) {
                                    //alert("圖表數據加載失敗!");
                                }
                            });

  

官方文檔以下:數組

ECharts沒有綁定resize事件,顯示區域大小發生改變內部並不知道,使用方能夠根據本身的需求綁定關心的事件,主動調用resize達到自適應的效果,常見如window.onresize = myChart.resize。async

注意:post

若是這個頁面有多個圖表:url

//多圖表自適應
window.addEventListener("resize", function () {
myEnergyChart.resize();
myEnergyChart2.resize();
});
相關文章
相關標籤/搜索