Echarts图表自适应布局

flexbox结构下echarts图表如何实现自适应布局?

已知echarts图表需要放在页面中心,宽度为屏幕宽度1/2,高度为距顶部80px,距底部60px,怎么放这个echarts图表比较好。

在扩大、减小屏幕宽度时,echarts图表可以自动跟着屏幕变化。

问题在于第一次布局成功后,图表宽度就会固定,会撑起父级容器的宽度,反过来又导致图表组件本身收不到resize事件。

解决方法有两个:

1、父级容器设置overflow:hidden,监测到resize后,动态设置图表新的宽度、高度

2、设置echarts图表为绝对定位,图表与容器完全脱离并不会再撑起容器,不会再干扰容器自适应变化。图表设置宽度:100%,高度:100%,不需要在resize中修改图表的宽度、高度了。

原文地址:https://www.cnblogs.com/xiaofish/p/12686412.html

时间: 2024-08-01 08:33:29

Echarts图表自适应布局的相关文章

vue框架下,echarts图表外部容器宽度设置为百分比时内容超出容器以及echarts图表自适应的实现方案

在vue.js框架下,创建echarts图表,当图表的外部容器的宽度设置为百分比时,出现图表内容宽度超出其外部容器的情况,几番调试,得解决方案如下: (备注说明:问题产生的具体原因尚不清晰,后面若知晓了再补充,但是初期解决问题阶段一定不要钻牛角,不是一开始就能或者可以知道真理的) 在创建了echart对象之后,就调用一次echart的resize方法,同时,获取图表数据的方法应该是异步的,如果是初期调试模拟也要用setTimeout延迟一下,0秒即OK了. methods: { ...mapAc

echarts图表初始大小问题及echarts随窗口变化自适应

最近在做一个轮播图,使用的是element的Carousel走马灯,每一个走马灯里是eachrts图,开始页面加载的时候发现echarts图并不能自适应,开始以为是走马灯的问题,后来发现不是 不知道大家在用echarts的时候有没有遇到这种情况: 最开始盛放图表的容器是隐藏(或者tab切换)的,然后再显示的时候,里面echarts图表就没用初始大小了.比如我遇到的这种: 有童鞋这会儿估计看出原因了:因为元素最初隐藏,再显示之后没有自动变化宽度,所以echarts图表没有初始宽高,官方文档的说法:

eCharts 多个图表自适应窗口大小

单个图表自适应页面窗口只需要在,创建图表节点后面添加一句代码就可以了: window.onresize = myChart.resize; 多图表要自适应页面,创建图表节点后面添加事件,并在事件函数里面添加对于的代码: //图表自适应页面 window.addEventListener("resize", function () { myChart01.resize(); myChart02.resize(); myChart03.resize(); myChart04.resize(

***ECharts图表入门和最佳实践

ECharts数据图表系统? 5分钟上手! [ECharts简介] ECharts开源来自百度商业前端数据可视化团队,基于html5 Canvas,是一个纯Javascript图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表.创新的拖拽重计算.数据视图.值域漫游等特性大大增强了用户体验,赋予了用户对数据进行挖掘.整合的能力. 支持折线图(区域图).柱状图(条状图).散点图(气泡图).K线图.饼图(环形图).雷达图(填充雷达图).和弦图.力导向布局图.地图.仪 表盘.漏斗图.事件河流图

echarts 的自适应

单图表自适应 var myChart = echarts.init(document.getElementById("main")) window.onresize = myChart.resize; 多图表自适应 var charts = []; myChart = echarts.init(document.getElementById('main')); myChart.setOption(option); charts.push(myChart); myChart = echa

vue使用Echarts图表

vue使用Echarts图表 童话_xxv 关注 0.5 2018.12.11 09:09* 字数 325 阅读 1456评论 2喜欢 13 在开发后台系统时,使用图表进行数据可视化,这样会使数据更直观.清晰.美观.所以我在项目里选用Echart,对部分数据进行图表显示.一.使用Echarts的两种方法:1.npm命令安装npm install echarts --save2.CDN方法引入index.html中,<script src="https://cdnjs.cloudflare.

mui在tab选项卡中echarts图表不能动态随页面变化大小 只能固定大小

在mui tab选项卡中一直都不能让echarts动态变化大小 只能固定大小来展示图表,网上说的window.onresize = mycharts.resize;方法根本就没有效果,后面在https://blog.csdn.net/dreamcarp/article/details/71439060博客才找到了解决方法,特意记录下来 浏览器有warning:cannot get height and width. 解决方法: //echarts-content是echarts图表div的id

echarts 视图自适应问题

最近在项目中用到了echarts,在处理视图自适应问题上记录一下:同时比较一下和highcharts的区别: 在echarts中有一个resize的函数,可以直接在监听窗口变化时重新渲染即可: //在原生代码中 var myCharts = echarts.init(document.getElementById('#myCharts')) window.onresize = function (){ myCharts.resize() } 如果是在vue项目中用到(我的项目是vue框架) //

三列自适应布局

自适应布局(四种写法,三种方案) 1.使用position:absolute. <!doctype html> <html> <head> <style> body{ width: 100%; padding: 0; margin: 0; } div{ height: 500px; } .div1{ width: 100px; background: red; float: left; } .div2{ height: 500px; background: