echarts实现不断变化的大屏大数据可视化看板代码
代码语言:html
所属分类:图表
代码描述:echarts实现不断变化的大屏大数据可视化看板代码
代码标签: echarts 不断 变化 大屏 大数据 可视化 看板 代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!doctype html> <html> <head> <meta charset="utf-8"> <meta content="width=device-width, initial-scale=1, maximum-scale=1.2, user-scalable=no" name="viewport"> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/jquery.2.11.js"></script> <script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/echarts.5.3.3.js"></script> <style> @charset "utf-8"; /* CSS Document */ *{ -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box} *,body{padding:0px; margin:0px; } body{ background: linear-gradient(25deg, #0f2249,#182e5a 20%,#0f2249 40%,#182e5a 60%,#0f2249 80%,#182e5a 100%);color:#fff; font-family:"PingFang SC","Lantinghei SC","Microsoft YaHei","HanHei SC","Helvetica Neue","Open Sans",Arial,"Hiragino Sans GB","等线",STHeiti,"WenQuanYi Micro Hei",SimSun,sans-serif; } li{ list-style-type:none;} table{} i{ margin:0px; padding:0px; text-indent:0px;} img{ border:none; max-width: 100%;} a{ text-decoration:none; color:#399bff;} a.active,a:focus{ outline:none!important; text-decoration:none;} ol,ul,p,h1,h2,h3,h4,h5,h6{ padding:0; margin:0} a:hover{ color:#06c; text-decoration: none!important} i,em{font-style: normal;} .clearfix:after, .clearfix:before { display: table; content: " " } .clearfix:after { clear: both } .pulll_left{float:left;} .pulll_right{float:right;} /*谷哥滚动条样式*/ ::-webkit-scrollbar {width:5px;height:5px;position:absolute} ::-webkit-scrollbar-thumb {background-color:#5bc0de} ::-webkit-scrollbar-track {background-color:#ddd} /***/ /* .loading{position:fixed; left:0; top:0; font-size:.3rem; z-index:100000000;width:100%; height:100%; background:#1a1a1c; text-align:center;} .loadbox{position:absolute; width:160px;height:150px; color: #324e93; left:50%; top:50%; margin-top:-100px; margin-left:-75px;} .loadbox img{ margin:10px auto; display:block; width:40px;} */ html,body { width: 100%;height: 100%;margin: 0; padding: 0; overflow: hidden} .videobg{ position: fixed;; width: 100%; height: 100%; left: 0; top: 0; background: #000;background: -webkit-radial-gradient(50% 10%,farthest-corner, #2a4fa9 0%, #101e42 50%,#090d1b,#000);} .videobg video{ object-fit: cover; filter:blur(2px); opacity: .05;filter: progid:DXImageTransform.Microsoft.Blur(PixelRadius='5'); position: relative; } .head{ height:90px; position: relative; z-index: 12; display: flex; align-items: center; justify-content: center;} .head::before,.head::after{ width: 100%; height: 90px; content: "";} .head::before{ background: url(//repo.bfw.wiki/bfwrepo/images/avatar/headleft.png) right top no-repeat;} .head::after{ background: url(//repo.bfw.wiki/bfwrepo/images/avatar/head_right.png) left top no-repeat;} .head h1{ flex-shrink: 0; background: url(//repo.bfw.wiki/bfwrepo/images/avatar/head_center.png) center top no-repeat; margin-left:-150px; margin-right:-150px; background-size:calc(100% - 300px) 79px ; height: 90px;;} .head h1 span{ color:#f6fbff; text-align: center; font-size: 46px; line-height:70px; font-family: "Microsoft YaHei"; background: linear-gradient(180deg,#fdfeff, #9fd8ff);background-size: cover;-webkit-background-clip: text;background-clip: text;-webkit-text-fill-color: transparent;text-fill-color: transparent;} html,body{height: 100%;} .mainbox1{ height:calc(65% - 100px); overflow: hidden; padding-top: 10px;} .mainbox2{ height:35%; overflow: hidden;} .mainbox1>ul,.mainbox2>ul{ height: 100%; padding: 0 5px;} .mainbox1>ul>li,.mainbox2>ul>li{ float: left; padding: 0 7px;height: 100%;} .mainbox1>ul>li:nth-child(1){ width: 25%} .mainbox1>ul>li:nth-child(2){ width: 30%} .mainbox1>ul>li:last-child{ width: 45%} .mainbox2>ul>li:nth-child(1){ width:25%} .mainbox2>ul>li:nth-child(2){ width:30%} .mainbox2>ul>li:nth-child(3){ width:45%} .boxall{ border: 1px solid rgba(52, 152, 218, 0.05); height: calc(100% - 10px); background: rgba(0, 104, 190, 0.05); padding:10px; position: relative; margin-bottom: 10px; z-index: 12;} .tit01{color: rgba(255,255,255,.9); font-size:16px; font-weight: bold; position: absolute ; top: 5px;} .boxnav { height: 100%; padding-top: 10px;} /* .boxall{ border: 1px solid rgba(52, 152, 218, 0.05); height: calc(100% - 37px); background: rgba(0, 104, 190, 0.05); padding:10px; position: relative; margin-bottom: 10px; z-index: 12;} .tit01{ color: rgba(255,255,255,.9); font-size:16px; padding: 0 ; line-height: 30px;margin-bottom: 10px;position: relative; z-index: 12;margin-top: -39px; margin-left: -12px;margin-right: -12px; display: flex; justify-content: space-between;} .boxall{ margin-top: 32px;} .boxnav { height: 100%;} */ .boxall:before, .boxall:after{ position:absolute; width: 15px; height: 15px; content: ""; border-top: 1px solid #3486da; top: -1px;opacity: .2;} .boxall:before,.boxfoot:before{border-left: 1px solid #3486da;left:-2px;} .boxall:after,.boxfoot:after{border-right: 1px solid #3486da; right: -2px;} .boxfoot{ position:absolute; bottom: 0; width: 100%; left:0;} .boxfoot:before, .boxfoot:after{ position:absolute; width: 15px; height: 15px; content: "";border-bottom:1px solid #3486da; bottom:-1px; opacity: .2;} .map{ height: 100%; position: relative;} .time{ position: absolute; left: 20px; top: 0; font-family: "等线"; line-height: 50px; padding-right: 15px; font-size: 18px; font-weight: lighter;} .topbtns{position: absolute; right: 20px; top: 0; height: 48px; display: flex; align-items: center;} .topbtns a{ display: flex; align-items: center; color: rgb(124, 201, 249); font-size: 15px;} .topbtns a img{ width: 18px; position: relative; margin-right: 3px;} .text{ display: flex;align-items: center;} .text ul{ display: flex;align-items: center; width: 100%;} .text li{width: 50%; text-align: center} .text li>span{ opacity: .5;} .text li p{ font-size: 40px; font-family: "等线"; padding-top: 5px;} /* .text li p span{font-weight: bold;} */ /**动画元素***/ .fadeIn{opacity:0;animation:fadeIn 1s forwards} .fadeInDown{opacity:0;transform:translate3d(0,-100%,0);animation:fadeInDown .6s forwards} .fadeInUp{animation-name:fadeInUp} .fadeInLeft{animation-name:fadeInLeft} .bounceIn{transform:scale(0,1);animation:bounceIn .6s forwards} @keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)} to{opacity:1;-webkit-transform:none;transform:none} } @keyframes fadeIn{0%{opacity:0;transform:scale(.8) } to{opacity:1;transform:scale(1) } } @keyframes fadeInDown{0%{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)} to{opacity:1;-webkit-transform:none;transform:none} } @keyframes fadeInUp{0%{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)} to{opacity:1;-webkit-transform:none;transform:none} } .delay02{animation-delay:.2s} .delay04{animation-delay:.4s} .delay06{animation-delay:.6s} .delay08{animation-delay:.8s} .delay1{animation-delay:1s} .delay12{animation-delay:1.2s} .delay14{animation-delay:1.4s} .delay16{animation-delay:1.6s} .delay18{animation-delay:1.8s} .delay2{animation-delay:2s} .number-animate{line-height:45px; height: 45px;font-size: 40px;overflow: hidden; display: inline-block; position: relative; } .number-animate .number-animate-dot{ width: 21px; float: left; text-align: center;} .number-animate .number-animate-dom{ width: 24px; text-align: center; float: left; position: relative; top: 0;} .number-animate .number-animate-dom span,.number-animate .number-animate-dot span{float: left;width: 100%;height: 45px;line-height: 1.1;} </style> </head> <body> <div class="videobg style1"> <video id="video" src="" style="width: 100%; height:100%;" autoplay="" muted="" loop=""></video> </div> <div class="head"> <h1><span>大数据看板</span></h1> <div class="time" id="time">2024.12.12 12:00:00</div> <div class="topbtns"> <a href="#"><img src="//repo.bfw.wiki/bfwrepo/images/avatar/exit.svg">退出</a> </div> </div> <div class="mainbox1"> <div id="map_container"></div> <ul class="clearfix" style="height: 100%;"> <li> <div class="boxall fadeIn" style="height: calc(40% - 10px)"> <div class="tit01">服务统计</div> <div class="boxnav text"> <ul> <li> <span>累计服务人次</span> <p class="Odometer1">0</p> </li> <li> <span>本学期服务人次</span> <p class="Odometer2">0</p> </li> </ul> </div> <div class="boxfoot"></div> </div> <div class="boxall fadeIn delay02" style="height: calc(60% - 10px);"> <div class="tit01">工作完成率</div> <div class="boxnav" id="echarts1"></div> <div class="boxfoot"></div> </div> </li> <li> <div class="boxall fadeIn delay04"> <div class="tit01">二级单位人数对比</div> <div class="boxnav" id="echarts7"></div> <div class="boxfoot"></div> </div> </li> <li> <div class=" fadeIn delay06" style="height: calc(50% - 2px);; display:flex; justify-content: space-between;"> <div class="boxall " style=" width: calc(50% - 7px);"> <div class="tit01">预警比例</div> <div class="boxnav" id="echarts5"></div> <div class="boxfoot"></div> </div> <div class="boxall " style=" width: calc(50% - 7px);"> <div class="tit01">预警性别比例</div> <div class="boxnav" id="echarts6"></div> <div class="boxfoot"></div> </div> </div> <div class="boxall fadeIn delay08" style="height: calc(50% - 10px);"> <div class="tit01">预警人群年级比例</div> <div class="boxnav" id="echarts4"> </div> <div class="boxfoot"></div> </div> </li> </ul> </div> <div class="mainbox2"> <div id="map_container"></div> <ul class="clearfix" style="height: 100%;"> <li> <div class="boxall fadeIn delay02"> <div class="tit01">总体情况</div> <div class="boxnav" id="echarts8"></div> <div class="boxfoot"></div> </div> </li> <li> <div class="boxall fadeIn delay04"> <div class="tit01">主要问题分布情况</div> <div class="boxnav" id="echarts2"></div> <div class="boxfoot"></div> </div> </li> <li> <div class="boxall fadeIn delay08"> <div class="tit01">各年级情况</div> <div class="boxnav" id="echarts3"></div> <div class="boxfoot"></div> </div> </li> </ul> </div> <script type="text/javascript" > $(document).ready(function () { var t = null; t = setTimeout(time, 1000); //開始运行 function time() { clearTimeout(t); //清除定时器 dt = new Date(); var y = dt.getFullYear(); var mt = dt.getMonth() + 1; var day = dt.getDate(); var h = dt.getHours(); //获取时 var m = dt.getMinutes(); //获取分 var s = dt.getSeconds(); //获取秒 var t = null; document.getElementById("time").innerHTML = y + "." + Appendzero(mt) + "." + Appendzero(day) + " " + Appendzero(h) + ":" + Appendzero(m) + ":" + Appendzero(s) + ""; function Appendzero(obj) { if (obj < 10) return "0" + "" + obj; else return obj; } t = setTimeout(time, 1000); //设定定时器,循环运行 } }) var txt = 35 option5 = { color: 'rgba(255,255,255,.1)', series: [{ name: 'Line 1', type: 'pie', clockWise: true, radius: ['60%', '70%'], itemStyle: { normal: { label: { show: false }, labelLine: { show: false } } }, hoverAnimation: false, data: [{ value: txt, name: '预警比例', label: { normal: { rich: { a: { color: '#fff', align: 'center', fontSize: 25, fontFamily:"等线", fontWeight: "bold", }, b: { color: 'rgba(255,255,255,.5)', align: 'center', padding: -20, fontFamily:"苹方", fontSize: 14 } }, formatter: function (params) { return "{a|" + params.value + "%}" + "\n\n{b|预警比例}"; }, position: 'center', show: true, textStyle: { fontSize: '14', fontWeight: 'normal', color: '#fff' } } }, itemStyle: { normal: { color: { // 完成的圆环的颜色 colorStops: [{ offset: 0, color: '#00ffde' // 0% 处的颜色 }, { offset: 1, color: '#00c5ab' // 100% 处的颜色 }] }, } } }, { name: '未使用', value: 100 - txt }] }] }; var grids={ left: '0', top: '30', right: '20', bottom: '0', containLabel: true } var textStyles={ color: 'rgba(255,255,255,.5)', fontFamily:"苹方" } var legends={ x: 'center', y: '0', icon: 'circle', itemGap: 8, textStyle: {color: 'rgba(255,255,255,.5)'}, itemWidth: 10, itemHeight: 10, }, option2 = { tooltip: { trigger: 'axis', axisPointer: { type: 'shadow', }, }, grid: grids, xAxis: { type: 'category', data: ['抑郁', '焦虑', '强迫', '偏执', '睡眠', '人际关系', '其它', ], axisLine: {show: false}, axisTick: {show: false}, axisLabel: {textStyle: textStyles}, }, yAxis: { type: 'value', splitNumber: 4, axisLine: { show: false }, axisTick: { show: false }, splitLine: { lineStyle: { color: 'rgba(255,255,255,0.05)' } }, axisLabel: { textStyle:textStyles, }, }, series: [{ name: '主要问题分布情况', type: 'bar', barWidth: '10', // label: { // normal: { // show: true, // position: 'top', // textStyle: { // color: "#007a55" // } // } // }, itemStyle: { normal: { color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{ offset: 0, color: '#00c5ab' }, { offset: 1, color: '#01dec1' }]), barBorderRadius: 11, } }, data: [123, 154, 234, 321, 120, 390, 634, 123, 154, 234, 321, 108] }] }; option3 = { tooltip: { trigger: 'axis', axisPointer: { lineStyle: { color: { type: 'linear', x: 0, y: 0, x2: 0, y2: 1, colorStops: [{ offset: 0, color: 'rgba(0, 255, 255,0)' }, { offset: 0.5, color: 'rgba(255, 255, 255,0.5)', }, { offset: 1, color: 'rgba(0, 255, 255,0)' }], global: false } }, }, // formatter: '{b}走势', }, legend: { x: 'center', y: '0', icon: 'circle', itemGap: 8, textStyle: { color: 'rgba(255,255,255,.5)' }, itemWidth: 10, itemHeight: 10, }, grid: grids, xAxis: [{ type: 'category', boundaryGap: false, splitLine: {show: false}, axisTick: {show: false}, axisLabel: {textStyle: textStyles}, axisLine: {show: false}, data: ['一年级', '二年级', '三年级', '四年级', '五年级', '六年级', '七年级', '八年级', '九年级'] }, { axisPointer: {show: false}, axisLine: {show: false}, position: 'bottom', }], yAxis: [{ type: 'value', axisTick: { show: false }, splitNumber: 3, axisLabel: { textStyle: textStyles, }, axisLine: { show: false }, splitLine: { lineStyle: { color: 'rgba(255,255,255,.05)' } } }], series: [{ name: '良好', type: 'line', smooth: true, symbol: 'circle', symbolSize: 4, showSymbol: false, lineStyle: { normal: { color: '#00ccea', width: 2 } }, areaStyle: { normal: { color: 'rgba(65,196,216,.0)' } }, itemStyle: { normal: { color: '#00ccea', borderColor: 'rgba(65,196,216,.3)', borderWidth: 7 } }, data: [60, 20, 50, 10, 70, 40, 130, 40, 180, 60, 80, 40], }, { name: '需关注', type: 'line', smooth: true, symbol: 'circle', symbolSize: 4, showSymbol: false, lineStyle: { normal: { color: '#00c5ab', width: 2 } }, areaStyle: { normal: { color: 'rgba(56,146,228,.0)' } }, itemStyle: { normal: { color: '#00c5ab', borderColor: 'rgba(56,146,228,.3)', borderWidth: 7 } }, data: [80, 60, 80, 40, 40, 60, 50, 40, 60, 20, 10, 70], }, { name: '需重点关注', type: 'line', smooth: true, symbol: 'circle', symbolSize: 4, showSymbol: false, lineStyle: { normal: { color: '#ffba00', width: 2 } }, areaStyle: { normal: { color: 'rgba(201,86,86,.0)' } }, itemStyle: { normal: { color: '#ffba00', borderColor: 'rgba(201,86,86,.3)', borderWidth: 7 } }, data: [40, 60, 40, 80, 60, 80, 40, 60, 20, 50, 10, 70] } ] }; option4 = { tooltip: { trigger: 'axis', axisPointer: { type: 'shadow' }, // formatter: '{b}走势', }, legend: legends, grid:grids, xAxis: { type: 'category', data: ['一年级', '二年级', '三年级', '四年级', '五年级', '六年级', '七年级', '八年级', '九年级'], axisLine: { show: false }, axisTick: { show: false }, axisLabel: { textStyle:textStyles }, }, yAxis: { type: 'value', splitNumber: 2, axisLine: { show: false }, axisTick: { show: false }, splitLine: { show: true, lineStyle: { color: 'rgba(255,255,255,0.05)' } }, axisLabel: { textStyle:textStyles }, }, series: [{ name: '男', type: 'bar', barWidth: 10, itemStyle: { normal: { color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{ offset: 0, color: '#00ccea' }, { .........完整代码请登录后点击上方下载按钮下载查看
网友评论0