echarts图表下载时toolbox会先消失再显示的优化

这篇具有很好参考价值的文章主要介绍了echarts图表下载时toolbox会先消失再显示的优化。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.在我的理解是由于echarts下载的图片不需要展示toolbox操作栏,因此图表会先将toolbox的dom先隐藏然后将图表区域合成一张图片实现下载

2.如何解决在点击下载图标时toolbox不隐藏又能下载成功呢?答案是替换原有的下载功能

toolbox: {//工具栏
          right: '20',
          y: '20',
          itemGap: 14,
          emphasis: { iconStyle: { color: '#20499E', borderColor: '#20499E', textPadding: 6, } },
          itemSize: 15,
          feature: {
            dataView: { show: false, readOnly: false },//数据视图
            mySave: {
              show: true,
              title: '下载图片',
              icon: 'path://' + 'M0.576923077,8 C0.853065452,8 1.07692308,8.22385763 1.07692308,8.5 L1.076,13 L12.923,13 L12.9230769,8.5 C12.9230769,8.22385763 13.1469345,8 13.4230769,8 L13.5,8 C13.7761424,8 14,8.22385763 14,8.5 L13.999,13 L14,13 L14,14 L0,14 L0,8.5 C-3.38176876e-17,8.22385763 0.223857625,8 0.5,8 L0.576923077,8 Z M7.03846154,0 C7.31460391,-5.07265313e-17 7.53846154,0.223857625 7.53846154,0.5 L7.538,9.668 L10.3639972,6.6707477 C10.559826,6.46292938 10.9000058,6.44187063 11.1238102,6.62371165 C11.3227474,6.78534812 11.3627704,7.05289296 11.2316716,7.2563093 L11.1744644,7.3292523 L7.4052336,11.3292523 C7.21454102,11.5316199 6.89199284,11.5541052 6.67199901,11.3967082 L6.5947664,11.3292523 L2.82553563,7.3292523 C2.62970683,7.12143399 2.65238549,6.80555268 2.87618983,6.62371165 C3.07512702,6.46207518 3.36601525,6.46075459 3.56573788,6.60841409 L3.63600284,6.6707477 L6.461,9.667 L6.46153846,0.5 C6.46153846,0.223857625 6.68539609,2.72771136e-16 6.96153846,0 L7.03846154,0 Z',
              iconStyle: {
                borderWidth: 0,
                color: '#555',
                borderColor: '#555'
              },
              onclick: (e) => {
                
              },
            },  
          },
        },

这里再toolbox中先实现一个自定义的mySave下载图标

//生成不带操作栏的url
option.toolbox[0].show = false;
dom.setOption(option, true);
this.chartImgUrl = dom.getDataURL({
    pixelRatio: 1,//放大倍数,如果设置2倍并且存在背景图时背景图也要设置宽高为2倍
    includeBackground: true,//是否包含背景图
    backgroundColor: '#fff'
);
setTimeout(() => {
    option.toolbox[0].show = true;
    option.toolbox[0].feature.mySave.onclick = (e) => {
         const a = document.createElement("a");
         a.href = this.chartImgUrl;
         a.target = "_blank";
         a.download = 'echart.png';
         a.style.display = "none";
         document.body.append(a);
              a.click();
         };

         dom.setOption(option, true);
            dom.resize();
}, 0)

 先设置toolbox隐藏获取到不带toolbox的url连接,再修改原有的click事件文章来源地址https://www.toymoban.com/news/detail-606047.html

到了这里,关于echarts图表下载时toolbox会先消失再显示的优化的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • web前端之若依项目窗口大小改变或侧边栏伸缩时echarts图表自适应、封装执行文件和模板文件、展开、折叠、ApacheECharts、KeepAlive、RouterView、deactivated

    如需完整代码请WX私聊: MJ682517 没有任何套路,直接发代码 在 vue 项目中,窗口大小不变(排除window的resize监听),侧边菜单栏折叠展开,导致右边内容区域宽度变化, echarts 图表不会自适应。常规解决办法的是使用window.addEventListener(“resize”)来监听窗口变化,但当前窗口大小并

    2024年02月01日
    浏览(33)
  • Docker Toolbox下载安装运行镜像

    这是Docker Toolbox的下载链接,找个最新的下就好了. 阿里云开源镜像站资源目录 下载之后点击exe文件点击安装,然后一直点next就行了. 安装之后,点击的时候如果显示快捷方式不对显示查找git.bash文件的话,就要找到你git安装目录的bin目录里的bash.exe文件,点击选中就行了,

    2024年02月06日
    浏览(35)
  • vue-echarts踩坑,本地开发可以渲染echarts图表,线上环境图表渲染不出来

    main.js 全局注册v-chart组件 在页面中使用 如上图,我开始写的静态数据,在data中定义了chartOption1:{…配置项…}, 在接口数据返回之后,更新了配置项,在本地开发环境可以正常渲染。但是线上环境出不来,也不报错,接口数据一切正常。 解决办法: 无奈最后没有使用‘vue-e

    2024年01月18日
    浏览(39)
  • 【ECharts系列】ECharts 图表渲染问题&解决方案

    echats 渲染,第一次的时候只出现Y轴数值,不出现X轴数值,切换下页面,X轴数值就能出现。  如果在使用ECharts渲染时,X轴数值只在切换页面后才出现,可能是因为ECharts在初始化时没有正确计算X轴的尺寸。 以下是可能的原因和解决方法: 数据格式不正确 没有设置X轴的类型

    2024年02月12日
    浏览(34)
  • 图表库-Echarts

    一. Echarts 1. 概述 常见的数据可视化库: D3.js 目前 Web 端评价最高的 Javascript 可视化工具库(入手难) ECharts.js 百度出品的一个开源 Javascript 数据可视化库 Highcharts.js 国外的前端数据可视化库,非商用免费,被许多国外大公司所使用AntV 蚂蚁金服全新一代数据可视化解决方案 等等

    2023年04月18日
    浏览(32)
  • Echarts实现3d图表

    注意:在使用一些3d类的echart的时候会发现报下面的错误  这个是因为echarts引用3d图形需要引入echarts和echarts-gl (这里我们可能会遗漏掉引入echarts-gl) 要注意不同版本echarts对应不同版本echarts-gl 【如果版本不匹配就重新安装对应版版本】

    2024年02月16日
    浏览(27)
  • 【图表】echart

    ECharts是一款基于JavaScript的数据可视化图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。ECharts最初由百度团队开源,并于2018年初捐赠给Apache基金会,成为ASF孵化级项目。 ECharts 提供了常规的折线图、柱状图、散点图、饼图、K线图,用于统计的盒形图,用

    2024年02月10日
    浏览(27)
  • Vue+Echarts图表动态适配

    目录 前言 一、问题背景 二、解决方案 1.在Vue组件中引入Echarts 2.初始化图表 3.监听resize事件 4.销毁图表 三、优化方案 1.防抖 2.节流 四、总结 在实际的前端开发过程中,动态适配是一个非常重要的问题。在数据可视化的场景下,图表的动态适配尤为重要。在本篇博客中,我们

    2024年02月05日
    浏览(35)
  • 项目中的Echarts图表统计

    前情提要:本次Echarts数据可视化基于图书管理系统设计 Echarts是一个开源的 可视化图表库 ,由百度前端技术部开发维护。它基于JavaScript语言实现,通过简单的配置即可生成丰富多样的图表,包括柱状图、折线图、饼图等等。Echarts支持各种数据格式,如JSON、XML、CSV等,同时

    2024年02月08日
    浏览(37)
  • vue+echarts图表的基本使用

    在实际开发当中,我们经常需要用到一些图表来实现数据可视化,这时候 echarts 可以帮助我们实现数据的展示。这里将介绍如何使用前端框架vue+echarts来实现数据可视化。 长话短说,echarts就是一个帮助数据可视化的库。 代码:直接复制代码创建一个vue组件,到App中引入组件

    2024年02月15日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包