echarts图表初始大小问题及echarts随窗口变化自适应
生活随笔
收集整理的這篇文章主要介紹了
echarts图表初始大小问题及echarts随窗口变化自适应
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
最近在做一個輪播圖,使用的是element的Carousel走馬燈,每一個走馬燈里是eachrts圖,開始頁面加載的時候發(fā)現(xiàn)echarts圖并不能自適應(yīng),開始以為是走馬燈的問題,后來發(fā)現(xiàn)不是
不知道大家在用echarts的時候有沒有遇到這種情況:
最開始盛放圖表的容器是隱藏(或者tab切換)的,然后再顯示的時候,里面echarts圖表就沒用初始大小了。比如我遇到的這種:
有童鞋這會兒估計看出原因了:因為元素最初隱藏,再顯示之后沒有自動變化寬度,所以echarts圖表沒有初始寬高,官方文檔的說法:
請注意:這個寬度在一些情況下設(shè)置百分比 是沒有作用的,所以得設(shè)置為具體數(shù)字或者用js賦值,類似這種:
$('main').style.width = (document.body.clientWidth-300)*0.6+'px';
P.S:這里沒說高度是因為如果不給容器固定高度,圖表是完成不顯示的(高度為0的容器肯定不會顯示哦)
那么如果想設(shè)置echart圖表隨窗口的縮放變化呢?以下兩種寫法都可以:
第一種:
window.onresize = myChart.resize; // .resize后不用加括號哦,一般如果window resize的時候不設(shè)置其他,可以這樣寫
第二種:
window.onresize = function () {
this.myChart.resize();
// .resize后加括號哦,這里還可以寫其他的事件
};
echarts官方文檔寫的很詳細(xì)哦,需要的童鞋自己去翻閱。
具體到我的代碼,我是這樣實現(xiàn)的,因為我的容器是百分比寫的,所以我的實現(xiàn)方式如下:
即是dom節(jié)點渲染以后,調(diào)用echarts實例的resize()方法;
總結(jié)
以上是生活随笔為你收集整理的echarts图表初始大小问题及echarts随窗口变化自适应的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 周杰伦新专辑只有6首新歌!网友边骂边买:
- 下一篇: 李想谈汽车音响:大牌主要是调音、甚至只是