返回顶部
首页 > 资讯 > 前端开发 > JavaScript >echart自适应宽度的两种方法实例
  • 318
分享到

echart自适应宽度的两种方法实例

echart宽度自适应echarts宽度设置echarts 宽度 2022-12-14 12:12:57 318人浏览 安东尼
摘要

1.一个页面多个图表的自适应宽度可以用 注意:应写在多个图表的后面,不能一个一个写,会发生错误 //根据窗口的大小变动图表 window.onresize = function()

1.一个页面多个图表的自适应宽度可以用

注意:应写在多个图表的后面,不能一个一个写,会发生错误

//根据窗口的大小变动图表 
window.onresize = function(){
    myChart.resize();
    myChart1.resize();    //若有多个图表变动,可多写
 
}

2.若是一个页面的多个图表需要分别监听改变宽度的话用(可以一个一个写)

window.addEventListener("resize",function(){
     myChart.resize();
});

3.若是要自适应高度和宽度的话

  • 首先你的初始div 必须有初始的高度和宽度(因为echart绘制需要宽和高)
  • 需要写一个javascript方法去获取你当前div 的高度和宽度;
  • 然后通过监听事件去监听你当前高度和宽度的变化

例如:

// es5
function fn(){//用于使chart自适应高度和宽度,通过窗体高宽计算容器高宽
    //var height=$("#divID").height()
    //或
    var height=document.getElementById("divID").offsetHeight
    var width=document.getElementById("divID").offsetWidth
};
 
fn ();//设置容器高宽
 
//窗口大小发生了变化,代码:
//方法1
window.onresize = function () {//用于使chart自适的方法  
    fn ();//重置容器高宽
    myChart.resize();
}
 
//方法2
window.addEventListener("resize",function(){   //监听
    fn ();//重置容器高宽
    myChart.resize();
})

附:echart多图表切换时图表宽度变成100px,而不是100%

现页面中有如下图表需要显示

现我希望页面在进行缩放的时候,图表大小也跟着变。首先想到的就是宽度设置为100%,但是当我在“总计”,“加分”,“扣分”之前切换时,发现图表宽度变成了100px(如果你设置的宽度是固定大小的,比如500px,那就不会有这个问题),这是echart本身的原因。那么如何解决图表自适应问题呢,现在有如下代码(只展示了主要的部分代码)

<!--图表容器-->
<div class="tab-pane active" id="total">
    <!-- 总计容器 -->
    <div id="total_chart" style="width: 100%;height:518px;"></div>
</div>
<div class="tab-pane" id="add">
    <!-- 加分容器 -->
    <div id="add_chart" style="width: 100%;height:518px;"></div>
</div>
<div class="tab-pane" id="deduction">
    <!-- 扣分容器 -->
    <div id="deduction_chart" style="width: 100%;height:518px;"></div>
</div>
<script>
    $.get('请求的url', function (response) {
            var total_id = "total_chart";
            var add_id = "add_chart";
            var deduction_id = "deduction_chart";
            // 总计表
            chart(total_id);
            // 加分表
            chart(add_id);
            // 扣分表
            chart(deduction_id);
        }, 'JSON')
    function chart(chart_id) {
        var myChart = echarts.init(document.getElementById(chart_id));
        var myOption;
        // 省略大部分代码
        // 使用制定的配置项和数据显示图表
        myChart.setOption(myOption);
        // 监听点击事件
        window.addEventListener("click", function () {
            myChart.resize();
        });
        // 监听浏览器页面缩放事件
        window.addEventListener("resize", function () {
            myChart.resize();
        });
    }
</script>

echart中的chart.resize()就可以实现,所以我们需要做的就是如何在页面进行缩放或者切换tab时,触发这个resize()操作呢?注意上面代码中的两个事件监听。

第一个是监听点击操作。只要你切换页面中的“总计”,“加分”,“扣分”,那么就会触发myChart.resize(),这样图表的大小就会发生改变,因为我们设置width是100%,所以它就会根据当前图表容器来进行变化。

第二个是页面缩放事件,道理和点击是一样的。建议两个都写,这样无论是你切换tab,还是页面缩放,图表大小都会跟着变化的。

总结

到此这篇关于echart自适应宽度的文章就介绍到这了,更多相关echart自适应宽度内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: echart自适应宽度的两种方法实例

本文链接: https://lsjlt.com/news/174853.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • echart自适应宽度的两种方法实例
    1.一个页面多个图表的自适应宽度可以用 注意:应写在多个图表的后面,不能一个一个写,会发生错误 //根据窗口的大小变动图表 window.onresize = function()...
    99+
    2022-12-14
    echart宽度自适应 echarts宽度设置 echarts 宽度
  • css宽度自适应怎么实现
    这篇文章将为大家详细讲解有关css宽度自适应怎么实现,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。   我们经常会看到这样的页面,左侧(或者右侧)为固定的导航或者菜单栏...
    99+
    2024-04-02
  • echarts怎么实现自适应宽度
    要实现Echarts图表的自适应宽度,你可以使用以下方法: 使用CSS样式控制容器的宽度:将Echarts绘图容器的宽度设置为一个...
    99+
    2023-10-21
    echarts
  • vue中的echarts实现宽度自适应的解决方案
    今天项目中需要使用到 echarts 为了自适应。找到了。以下解决方案、 效果图 代码 <template> <!-- 这是图表开始 --> &l...
    99+
    2024-04-02
  • css如何设置table的宽度为自适应宽度
    这篇文章主要介绍“css如何设置table的宽度为自适应宽度”,在日常操作中,相信很多人在css如何设置table的宽度为自适应宽度问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解...
    99+
    2024-04-02
  • CSS实现三列布局两端固定宽度中间自适应
    这篇文章主要讲解了“CSS实现三列布局两端固定宽度中间自适应”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS实现三列布局两端固定宽度中间自适应”吧! ...
    99+
    2024-04-02
  • 怎么实现图片高度随宽度自适应
    本篇文章为大家展示了怎么实现图片高度随宽度自适应,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。一、可以使用js判断图片的宽度得到具体数值之后,再来利用js设置图片的高度(这里就不具体为大家细说了)。...
    99+
    2023-06-09
  • 如何实现网页宽度自动适应手机屏幕宽度
    这篇文章主要介绍“如何实现网页宽度自动适应手机屏幕宽度”,在日常操作中,相信很多人在如何实现网页宽度自动适应手机屏幕宽度问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何实现网页宽度自动适应手机屏幕宽度”的疑...
    99+
    2023-06-08
  • CSS怎么实现宽度自适应宽高16:9的矩形
    小编给大家分享一下CSS怎么实现宽度自适应宽高16:9的矩形,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!具体实现方法:第一步先计算高度,假设宽100%,那么高为...
    99+
    2023-06-08
  • CSS三栏布局中如何进行中间固定宽度两边自适应宽度
    这期内容当中小编将会给大家带来有关CSS三栏布局中如何进行中间固定宽度两边自适应宽度,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。 今天早上...
    99+
    2024-04-02
  • iframe窗口高度自适应的实现方法
    要实现iframe窗口高度自适应,可以通过以下方法:1. 使用JavaScript动态调整iframe的高度:- 在iframe加载...
    99+
    2023-08-11
    iframe
  • html如何设置input的宽度自适应
    这篇文章主要讲解了“html如何设置input的宽度自适应”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“html如何设置input的宽度自适应”吧! ...
    99+
    2024-04-02
  • css如何实现六种自适应两栏布局方式
    这篇文章主要介绍css如何实现六种自适应两栏布局方式,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!html结构  <body>     ...
    99+
    2023-06-08
  • 如何使用CSS实现自适应宽度的菜单
    本文将为大家详细介绍“如何使用CSS实现自适应宽度的菜单”,内容步骤清晰详细,细节处理妥当,而小编每天都会更新不同的知识点,希望这篇“如何使用CSS实现自适应宽度的菜单”能够给你意想不到的收获,请大家跟着小...
    99+
    2024-04-02
  • css如何实现右侧固定宽度以及左侧宽度自适应
    这篇文章主要介绍了css如何实现右侧固定宽度以及左侧宽度自适应,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。反过来也可以:左侧宽度固定,右侧自适应。不管是左是右,反正就是一边...
    99+
    2023-06-08
  • CSS怎么实现菜单背景自适应宽度
    本篇内容主要讲解“CSS怎么实现菜单背景自适应宽度”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“CSS怎么实现菜单背景自适应宽度”吧!本文实例讲述了CSS实现菜...
    99+
    2024-04-02
  • Android自定义荷载进度的两种方法
    本文将用两个方法来写类似汽车荷载的进度 用LinearLayout的addview方法加上for循环 用自定义控件的方法 先上截图 1. 用LinearLayout的...
    99+
    2022-06-06
    方法 Android
  • css如何设置单元格的高度宽度自适应
    这篇文章给大家分享的是有关css如何设置单元格的高度宽度自适应的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 设置单元格的高度宽度自适应的方法:1、给...
    99+
    2024-04-02
  • 如何实现独行DIV自适应宽度布局CSS
    这篇文章主要讲解了“如何实现独行DIV自适应宽度布局CSS”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何实现独行DIV自适应宽度布局CSS”吧!  关键...
    99+
    2024-04-02
  • CSS怎么实现独行DIV自适应宽度布局
    这篇文章主要介绍了CSS怎么实现独行DIV自适应宽度布局的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇CSS怎么实现独行DIV自适应宽度布局文章都...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作