Echarts自适应屏幕,无需刷新网页,可根据屏幕大小完美展现

效果如图

随意拖拉,无惧检验 ~ ~ ~ ~

下面上代码

里边有详细解释

<template>
<div class="hello">
<!-- 初始化echarts需要一个有宽高的盒子 -->
<div id="mychart" ref='mapbox' style='width:100%;min-width:300px;height:100%;min-height:400px'> </div>
</div>
</template> <script>
import echarts from 'echarts'
import 'echarts/map/js/china'
import jsonp from 'jsonp'
const option1 = {
xAxis: {
type: 'category',
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
},
yAxis: {
type: 'value'
},
series: [{
data: [820, 932, 901, 934, 1290, 1330, 1320],
type: 'line'
}]
}
// 使用地图先注册地图
const option2 = {
title:{text:'疫情地图',link:'http://tangdd.cn',subtext:'全国疫情地图一览表'},
series:[{
data:[],//用来展示后台给的数据
type:'map',//控制是折线图还是地图
map:'china',//控制是那个地区地图
label:{ show:true ,color: 'black',fontSize:10},//控制对应地区的汉字
itemStyle:{
areaColor:'pink',
borderColor:'#776a6a'
},//控制地图的颜色还有边框
emphasis:{
label:{
color:'black',
fontSize:12
},
itemStyle:{
areaColor:'#ccc'
}
},//控制鼠标滑过之后背景色和字体颜色
zoom:1,//控制地图的放大缩小
}],
//分层次显示地图颜色用下面这个东西,就是地图左下角那个东西
visualMap:[{
zoom:1,
type:'piecewise',//条状
show:true,
splitNumber:5,//默认分为几条,就是看你要搞几个间断
pieces:[
{min:10000},
{min:1000,max:9999},
{min:100,max:999},
{min:10,max:99},
{min:1,max:9}
],
align:'right',//控制字和条的位置,默认放到左边
// orient:'horizontal',//控制整块的位置是平铺一大长条还是垂直啥的,默认垂直
// left:40 ,//控制分段位置控制整块的位置
// right:100 //控制分段位置控制整块的位置
// showLabel:false,//这个没什么用处,会隐藏字
// textStyle:{},//这个很明显是搞字体的
inRange:{
symbol:'rect',
color:['#ffc9c9','#9c0505']
},//这个控制小图是圆的还是方的啥的还有渐变色
itemWidth:8,
itemHeight:4
}]
}
export default {
name: 'HelloWorld',
mounted(){
this.getData()
this.mychart = echarts.init(this.$refs.mapbox)
// mychart.setOption(option1)
this.mychart.setOption(option2)
this.resizeTheChart()
window.addEventListener("resize", this.resizeTheChart);
},
methods:{
resizeTheChart() {
if (this.$refs && this.$refs.mapbox) {
let mychartNode = document.getElementById('mychart');
mychartNode.style.height = mychartNode.offsetWidth*0.8+'px'
this.mychart.resize();
}
},
// 接口采用自'https://renjinhui.github.io/review_vue/dist/index.html#/yqdt'
getData(){
jsonp('https://interface.sina.cn/news/wap/fymap2020_data.d.json?_=1580892522427&callback=__jp0',{},(err,data)=>{
if(!err){
console.log(data)
let list = data.data.list.map(item=>({name:item.name,value:item.value}))
option2.series[0].data = list;
console.log(list)
this.mychart.setOption(option2)//这行代码必须是DOM渲染完成才可以执行哦
}
})
}
}
}
</script> <!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped lang="less">
h3 {
margin: 40px 0 0;
}
ul {
list-style-type: none;
padding: 0;
}
li {
display: inline-block;
margin: 0 10px;
}
a {
color: #42b983;
}
</style>

Echarts自适应屏幕,无需刷新网页,可根据屏幕大小完美展现,内有详细代码注释,我可真是个小机灵~~O(∩_∩)O哈哈~的更多相关文章

  1. 实时更新数据,无需刷新:a,如何使用Turbolinks clearCache(), b Action Cable

    视频: https://gorails.com/episodes/how-to-use-turbolinks-clearCache?autoplay=1 用途: 更方便的实时从服务器更新局部网页,在这 ...

  2. Sublime3和Chrome配置自动刷新网页【实测可用】

    SublimeText2下的LiveReload在SublimeText3下无法正常使用,本文整理SublimeText3安装LiveReload的方法.win7下实测可用! 安装成功后,就不需要再手 ...

  3. 移动端 css实现自适应正圆 ( 宽高随着手机屏幕宽度自适应 )

    序言:应朋友要求随手写了一下移动端 css实现自适应正圆 ( 宽高随着手机屏幕宽度自适应 ) ,以备后用 LESS代码: .adaptive-circle { margin: 50px auto 0; ...

  4. response常见应用、response细节、输出随机图片、定时刷新网页

      response常见应用 向客户端输出中文数据 分别以OutputStream和PrintWriter输出 多学一招:使用HTML语言里面的<meta>标签来控制浏览器行为 思考:用O ...

  5. JS获取屏幕,浏览器窗口大小,网页高度宽度(实现代码)_javascript技巧_

    JS获取屏幕,浏览器窗口大小,网页高度宽度(实现代码)_javascript技巧_--HTML5中文学习网 http://www.html5cn.com.cn/shili/javascripts/79 ...

  6. 解决Yii2中刷新网页时验证码不刷新的问题

    解决Yii2中刷新网页时验证码不刷新的问题 [ 2.0 版本 ] ljfrocky  2015-05-30 19:39:00  1304次浏览 5条评论 10110 在Yii2框架中,如果在表单中使用 ...

  7. 问下大家,chorme里用开发者工具看headers,点network标签然后刷新网页并没有headers选项,怎么破?

    问下大家,chorme里用开发者工具看headers,点network标签然后刷新网页并没有headers选项,怎么破? 请教个问题 jmeter在Linux服务器压测,抛出很多错误率 但日志中没看到 ...

  8. 修改了JS代码,刷新网页后,加载的JS还是原来旧的?

    本地修改JS脚本后,刷新网页看一下修改后的执行效果,结果调试显示加载的JS还是原来旧的,反复刷新均无效,郁闷! 解决办法:清理一下浏览器缓存(长经验了!)     Ctrl+Shift+Del 清除G ...

  9. vue单页面应用刷新网页后vuex的state数据丢失问题以及beforeunload的兼容性

    最近在用vue写h5项目,当使用window.location重定向页面或者刷新当前页面时, 发现当刷新网页后,保存在vuex实例store里的数据会丢失. 后来在网上查找大神的解决方案如下: exp ...

  10. Python-webbrowser实现自动打开关、定时打开关闭网页/刷新网页

    webbrowser- 方便的Web浏览器控制器,是Python一个模块,可实现自动打开关.定时打开关闭网页/刷新网页,在Unix下,图形浏览器在X11下更受欢迎,但如果图形浏览器不可用或X11显示器 ...

随机推荐

  1. 10.异步mysql

    python中操作mysql连接.操作.断开都是网络IO #安装支持异步aiomysql的模块 pip3 install aiomysql async def execute(): # 网络IO操作, ...

  2. settings.py 配置汇总

    数据库配置: DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # 数据库引擎 'NAME': ' ', #数据库名称 ...

  3. 我终于会写 Java 的定时任务了!

    前言 学过定时任务,但是我忘了,忘得一干二净,害怕,一直听别人说: 你写一个定时任务就好了. 写个定时任务让他去爬取就行了. 我不会,所以现在得补回来了,欠下的终究要还的,/(ㄒoㄒ)/~~ 定时任务 ...

  4. Nginx 使用自签名证书实现 https 反代 Spring Boot 中碰到的页面跳转问题

    问题一:页面自动跳转到 80 端口 问题描述 最近在使用Nginx反代一个Spring Boot项目中碰到了一个问题,使用 Spring Boot 中的 redirect: 进行页面跳转的时候,通过 ...

  5. vim常用快捷键总结一(光标移动命令)

    vim编辑器的工作模式分为3种即(命令模式,编辑模式和尾行模式),具体定义这里就不在赘述了,这里只简单介绍各工作模式下对应的操作和快捷方式. 通常来说三三种模式功能划分大致如下 命令模式:定位.翻页. ...

  6. 【NGINX】浅尝

    Introduction Nginx is a web server that can also be used as a reverse proxy, load balancer, mail pro ...

  7. 国产图形化的msf——Viper初体验

    目录 免责声明: Viper简介 安装 使用 免责声明: 本文章仅供学习和研究使用,严禁使用该文章内容对互联网其他应用进行非法操作,若将其用于非法目的,所造成的后果由您自行承担,产生的一切风险与本文作 ...

  8. linux内核中的likely与unlikely

    前言 内核版本:linux 4.9.x.在linux内核中,经常可以看见if( likely(x))或if( unlikely(x))的语句,本文将基于likely和unlikely的定义和作用进行一 ...

  9. 第2-4-5章 规则引擎Drools高级语法-业务规则管理系统-组件化-中台

    目录 6. Drools高级语法 6.1 global全局变量 6.2 query查询 6.3 function函数 6.4 LHS加强 6.4.1 复合值限制in/not in 6.4.2 条件元素 ...

  10. 7. PyQt5 中的多线程的使用(下)

    专栏地址 ʅ(‾◡◝)ʃ 紧接着上一节, 这一节具体介绍 图形化界面 如何给 任务线程传递数据 7.1 from form import Ui_Form from PyQt5.QtWidgets im ...