对于Echarts实例化与销毁的一些运用

15 篇文章 1 订阅
5 篇文章 0 订阅

本篇文章比较浅显,主要写给想要快速直接上手数据可视化带Echarts图表项目的新人们。

1、实例化图表:setOption(Object option)

Object类型的参数 option,表示图表数据结构 ,形如:

var option  = {
               title: {
                  text: "我的第一个ECharts图表示例"
                },
                tooltip: {
                    trigger: 'axis'
                }
              };

在option里填好图表的各种参数,如type(图表类型,折现或柱状或饼图等等),data(图表数据)等等,这些具体参考官方文档。

然后将option注入图表中

let myChart.setOption(option)

2、清除或销毁图表,方法较多,列举几个:

①、refresh()

描述:刷新图表,图例选择、数据区域缩放,拖拽状态均保持。

myChart.refresh();

②、restore()

描述:还原图表,各种状态均被清除,还原为最初展现时的状态。

myChart.restore();

③、clear()

描述:清空绘画内容,清空后实例可用,因为并非释放示例的资源,释放资源我们需要dispose()

myChart.clear();

④、dispose()

描述:释放图表实例,释放后实例不再可用。

myChart.dispose();

我个人比较常用的是第③和第④种,类似我上篇文章提到的需要销毁/清空图表数据,使新注入的图表数据从0过渡到新数据,就可以用这种方法。
如果要不停清空再绘制,则用③,对浏览器负载小一些。
如果是直接销毁不需要重新绘制,则用④直接释放图表实例

// 重置水球图
upsetCharts() {
      if (this.myChart) {
        this.myChart.clear();
        // this.myChart.dispose();
      }
    });
}


mounted() {
  let self = this;
...
  self.upsetCharts(); // 加载前重置一下
  self.myChart.setOption(option)
}

3、根据标签的新宽高重新制定Echarts大小:resize()

运用在需要图表完成自适应的场景,比如浏览器页面窗口宽高改变时让图表自适应放大缩小。
这个在我上上篇文章已详细提到过,不再赘述。
传送门:https://blog.csdn.net/vvv3171071/article/details/122113138


4、最后附赠一个Echarts设置数据变化时过渡动画时长的属性
既然你点进了这篇文章,就说明你想完成销毁图表再重新实例化的操作,而伴随着这一系列操作,当然还需要美化一下图表过渡动画才能让用户体验更好呀~
以下是官方文档:
在这里插入图片描述
其中animationEasing是用来设置动画缓冲效果的,这个削微高级了写,可以参考这篇:

https://blog.csdn.net/ghj1976/article/details/5389086

如果只是想设置过渡动画时长,只设置animationDuration就可以了

option = {
          series: [
            {
              type: "liquidFill", // 高贵的水球图
              radius: "80%",
              data: [item.data],
              animationDuration: 1000, // 过渡动画时长,单位ms
            }
          ]
        }

最近调到新项目组后要接手好一阵子的数据可视化工程,估计最近出关于Echarts的文章会比较多吧。THX~

  • 3
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值