在同一页面中存在多个图表,chart.resize();其中之一不起作用。

Echarts同一页面多个图表自适应浏览器窗口大小——window.onresize

当前做的一个项目中,频繁使用到百度团队的Echarts,发在一个页面同时出现多个图表时,只有最后一个图表触发了window.onresize事件,查询官方文档后得到解决。

方法如下:

1
2
3
4
5
6
7
8
hwChart.setOption(option_hw);
swChart.setOption(option_sw);
setTimeout( function  (){
     window.onresize =  function  () {
         hwChart.resize();
         swChart.resize();
     }
},200)

示例:
html
<div id="mainchart" style="width: 100%;height:360px;"></div>
<div id="active" style="width: 100%;height:415px;"></div>
script
<script>function mainchart(){// 基于准备好的dom,初始化echarts实例var resourceChart = echarts.init(document.getElementById('mainchart'),'macarons'); //macarons主题
var activeChart = echarts.init(document.getElementById('active'),'macarons');// 指定图表的配置项和数据option = {title: {text: '用户在线率/资源占用率',textStyle:{color:'#333',fontStyle:'normal',fontWeight:"600",fontFamily:"microsoft yahei",fontSize:16}},tooltip : {trigger: 'axis',axisPointer : {            // 坐标轴指示器,坐标轴触发有效type : 'line'        // 默认为直线,可选为:'line' | 'shadow'}},legend: {x: 'right', data:['用户在线率','磁盘','内存']},grid: {x: '40px', y: '50px', width: '95%'},xAxis: [{type: 'category',boundaryGap: false,data: ['8:10','8:20','8:30','8:40','8:50','9:00','9:10']}],yAxis : [{type : 'value'}],series: [{name:'用户在线率',type:'line',data:[50, 59, 67, 53, 72, 65, 70]},{name:'磁盘',type:'line',data:[61, 72, 72, 65, 83, 82, 90]},{name:'内存',type:'line',data:[55, 67, 62, 75, 93, 72, 80],markPoint: {data: [{type: 'max', name: '最大值'},{type: 'min', name: '最小值'}]}*/}]};// 指定图表的配置项和数据option2 = {title: {text: '活跃用户TOP',textStyle:{color:'#333',fontStyle:'normal',fontWeight:"600",fontFamily:"microsoft yahei",fontSize:16}},tooltip : {trigger: 'axis',axisPointer : {            // 坐标轴指示器,坐标轴触发有效type : 'none'        // 默认为直线,可选为:'line' | 'shadow'}},grid: {left: '3%',right: '4%',bottom: '8%',containLabel: true},xAxis : [{type : 'category',data : ['李雪','周成龙','张敏','元芳菲','李菲儿','陈洁','张敏','元芳菲','李菲儿','陈洁'],axisTick: {alignWithLabel: true},//设置字体倾斜  axisLabel:{ rotate:45//倾斜度 -90 至 90 默认为0  },}],yAxis : [{type : 'value'}],series: [{name: '2017年',type: 'bar',itemStyle: {normal: {color: new echarts.graphic.LinearGradient(0, 0, 0, 1,[{offset: 0, color: '#bcd1ff'},{offset: 1, color: '#3964c1'}])},emphasis: {color: new echarts.graphic.LinearGradient(0, 0, 0, 1,[{offset: 0, color: '#bcd1ff'},{offset: 1, color: '#2851a7'}])}},data: [100, 300, 152, 121594, 134141, 81807, 31000, 121594, 134141, 81807]}]};// 使用刚指定的配置项和数据显示图表。resourceChart.setOption(option);activeChart.setOption(option2);/*窗口自适应,关键代码*/setTimeout(function (){window.onresize = function () {resourceChart.resize();activeChart.resize();}},200)};</script>

echarts 随屏幕大小改变大小chart.resize()相关推荐

  1. ECharts 根据屏幕变化更改大小地图

    <!--这是地图--> <template><div><div ref="contractRateChart02" class=" ...

  2. HTML设置字体大小自适应屏幕与echarts图表颜色根据数据大小实时刷新图表颜色

    设置html文字大小根据页面大小自适应,在使用rem之前是使用的px和百分比,后来发现页面缩放或在小屏幕的电脑显示不尽人意,后改用rem,写法如:font-size: .21rem;或font-siz ...

  3. echarts自适应大小或改变窗体大小自适应大小与浏览器最大最小化事件

    窗体最大化最小化事件 $(window).resize(function () {autoWidth();}); echarts图表自适应的有两种办法 一种是重新加载一遍数据重新赋值 另一种是调用re ...

  4. vue中echarts自适应屏幕大小

    vue中echarts自适应屏幕大小,延迟执行 项目中出现echarts适应屏幕大小,有时会遇到不管屏幕大小如何变化echarts图表大小不变的情况:或者出现图表变化延迟的情况,针对这两种情况,分别解 ...

  5. java应用窗口大小_java 如何让程序窗口随屏幕大小改变 | 学步园

    这个问题一直困扰我很长时间了,虽然工作了一段时间,但感觉连这个问题都解决不好的话,实在对不起自己.今天我终于抽出时间,好好网上找了下资料,然后写了个简单的记事本程序,感觉是我想要的结果.所以在这里把程 ...

  6. java 改变窗口大小_java 如何让程序窗口随屏幕大小改变

    这个问题一直困扰我很长时间了,虽然工作了一段时间,但感觉连这个问题都解决不好的话,实在对不起自己.今天我终于抽出时间,好好网上找了下资料,然后写了个简单的记事本程序,感觉是我想要的结果.所以在这里把程 ...

  7. [echarts] 图表自适应宽高大小

    <div class="echart-wrap" :ref="wrapId" :id="wrapId" ><div :re ...

  8. 【最终版】PyQt5 自定义标题栏,实现无边框,最小化最大化关闭事件,窗口拖动移动,窗口改变大小,仿百度网盘色调美化,添加内容窗口

    [最终版]PyQt5 自定义标题栏,实现无边框,最小化最大化关闭事件,窗口拖动移动,窗口改变大小,仿百度网盘色调美化,添加内容窗口 文章目录 [最终版]PyQt5 自定义标题栏,实现无边框,最小化最大 ...

  9. PyQt5 自定义标题栏,实现无边框,最小化最大化关闭事件,窗口拖动移动,窗口改变大小,仿百度网盘色调美化

    PyQt5 自定义标题栏,实现无边框,最小化最大化关闭事件,窗口拖动移动,窗口改变大小,仿百度网盘色调美化 文章目录 PyQt5 自定义标题栏,实现无边框,最小化最大化关闭事件,窗口拖动移动,窗口改变 ...

最新文章

  1. 机器人视觉三维成像技术全解析
  2. 学python需要英语基础吗-学python需要英语基础吗
  3. VS2010中如何更改项目名称【转】
  4. CSS3新特性应用之用户体验
  5. 庖丁解InnoDB之UNDO LOG
  6. Android 中动态的向布局中添加控件
  7. 一场360容器圈的武林大会“360互联网技术训练营第九期—360容器技术解密与实践” (附PPT与视频)
  8. 三星Galaxy Fold 2渲染图曝光:怎么折是个问题
  9. netty : websocketx.WebSocketHandshakeException: not a WebSocket handshake request: missing upgrade
  10. HTML - 文本及其格式化
  11. 七月算法机器学习 7 工作流程与模型调优
  12. paip.提升ASP编程安全性之脚本部件
  13. din字体是开源字体吗_字体 DIN 与工业标准
  14. GraphPad Prism 统计教程 :高斯分布
  15. vue3 axios 封装
  16. 负载均衡集群技术介绍
  17. python爬虫简单入门级,小白讲说
  18. iOS 打开第三方应用
  19. STM32CubeMx移植DSP库 傅立叶变化(FFT)测试
  20. Interconnection

热门文章

  1. c++ web 框架 ---ricky.chu
  2. 2022华为杯第十九届中研数模
  3. 【java项目】飞机大战
  4. Docker中安装python-pcl库
  5. Could not find a version that satisfies the requirement pylab No matching distribution found for pyl
  6. 打印机总提示更换墨盒该怎么办?
  7. javascript提取联通个人信息和通话记录的代码
  8. 大一上学期计算机考试笔记,计算机一级考试重点笔记
  9. C++使用ADODB连接数据库
  10. 邮件推广遇到每天只能发100封的限制,已解决,看这一篇就够了!