Echarts设置图表中的柱子间距自适应

本文探讨了Echarts图表的自适应方法,包括整个图表和图表内容的自适应,如柱状图的柱子间距。针对内容自适应,提出了通过setInterval周期性检查页面大小,并使用myChart.setOption调整系列和图例参数来实现自适应效果的解决方案。
摘要由CSDN通过智能技术生成
  • 图表自适应分为两种情况:
    • (1).整个图表的自适应
    • (2).图表中具体内容自适应(柱子、图例,x轴坐标间距等两种自适应)
  • 解决方法分别为:
    • (1).整个图表的自适应:

      • 设置很简单,官方提供了公共方法:myChart.resize(),不再做详细说明;
    • (2).图表中具体内容自适应设置:

      • a.设置一个setInterval周期函数定时检查页面大小
      • b.报表加载后通过 myChart.setOption({ series: [{… }], legend: {…} })改变部分参数值,以实现自适应效果,代码如下:
      _initChart: function () {
             
      	        ///<summary>报表数据初始化</summary>
      	        var dom = document.getElementById("divChart");
      	        var myChart_more = echarts.init(dom);
      	        var option = _this._getOption();
      	        if (option && typeof option === "object") {
             
      	            myChart_more.setOption(option, true);
      	        }
      	        _this.myChart_more = myChart_more;
      	        //设置图表跟随页面调整自适应页面大小
      	        setInterval(function () {
             
      	            var echartRange = document.body.clientWidth + "," + document.body.clientHeight; //页面的尺寸
      	            if (!_this.echartRange) {
             
      	                _this.echartRange = echartRange; //记录第一次加载时的页面尺寸
      	            }
      	            if (_this.echartRange != echartRange) {
             
      	                _this.myChart_more.resize(); //设置图表自适应
      	                _this._setBarGapOption(); //设置柱子自适应
      	            }
      	            else if (_this.myChart_more && _this.myChart_more.getWidth() == 0) {
             
      	                _this.myChart_more.resize(); //设置图表自适应
      	                _this._setBarGapOption(); //设置柱子自适应
      	   
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值