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. vue3+element-plus+登录逻辑token+环境搭建

    vue3+element-plus+登录逻辑token环境搭建 安装脚手架工具 1 npm i @vue/cli@4.5.13 -g 验证是否安装成功 1 vue -V # 输出 @vue/cli 4 ...

  2. k8s挂在问题

    今天在重启pod这个后发现一直处于 然后去describe发现报错如下 先去手动mount的发现挂在不了 然后去slave节点发现这个没有安装 然后手动去安装后重启pod问题解决

  3. 某 .NET RabbitMQ SDK 有采集行为,你怎么看?

    一:背景 1.讲故事 前几天有位朋友在微信上找到我,说他的一个程序上了生产之后,被运维监控定位到这个程序会向一个网址为: http://m.365ey.net 上不定期打数据,而且还是加密的格式,要他 ...

  4. Java反序列化中jndi注入的高版本jdk绕过

    群里大佬们打哈哈的内容,菜鸡拿出来整理学习一下,炒点冷饭. 主要包含以下三个部分: jndi注入原理 jndi注入与反序列化 jndi注入与jdk版本 jndi注入原理: JNDI(Java Name ...

  5. Linux学习环境搭建流程

    Linux学习环境搭建 Vmware安装 VMware下载:https://www.vmware.com/go/getworkstation-win 运行安装程序,该重启安装驱动就重启,不需要就下一步 ...

  6. JS数据结构与算法-数组结构

    数组结构 几乎所有的编程语言都原生支持数组类型,因为数组是最简单的内存数据结构. 数组通常情况下用于存储一系列同一种数据类型的值. 但在JavaScript里,也可以在数组中保存不同类型的值. 但我们 ...

  7. 自动化运维?看看Python怎样完成自动任务调度⛵

    作者:韩信子@ShowMeAI Python3◉技能提升系列:https://www.showmeai.tech/tutorials/56 本文地址:https://www.showmeai.tech ...

  8. 解决win7设置默认程序打开方式失效

    问题描述 我在设置一个文件(.ui)的默认程序打开,总是失效.设置不成功. 原因 正常这个程序应该用 designer.exe 打开,但是我之前设置过(.ui)默认程序打开程序为designer.ex ...

  9. 更换linux的开机启动图片, 启动主题

    简述 之前就想更改开机的启动图片,但是后来简单查了一下,说要重新编译内核,听到编译我就望而却步了,今天发现只是个命令而已,注意这里我用的是 linux mint .这里更改不是 grub 主题, 是 ...

  10. 教你几个 Java 编程中的奇技淫巧

    枯燥的编程中总得有些乐趣,今天我们不谈论那些高深的技能,教你几个在编程中的奇技淫巧,说不定在某些时候还能炫耀一番呢. 1.找到最大值和最小值 不使用 if else switch 和三元运算符,在给定 ...