位置: IT常识 - 正文

大数据热点城市波动图案例【CSS3实现 + 原理分析 + 源码获取】(大数据热点话题)

编辑:rootadmin
大数据热点城市波动图案例【CSS3实现 + 原理分析 + 源码获取】 一:案例效果

       本次案例我们分析一下数据可视化页面最常见的热点图是如何实现的,其原理并不复杂,只需要用到CSS3动画属性 animation 以及 @keyframe 关键帧即可,重点是向外扩散的环如何布局比较合适,以及每个环怎么扩散何时扩散比较合适。

推荐整理分享大数据热点城市波动图案例【CSS3实现 + 原理分析 + 源码获取】(大数据热点话题),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:大数据谈论热点有,大数据热点新闻,大数据 城市,大数据热度,大数据热度,大数据热点分析,大数据热点话题,大数据的热点,内容如对您有帮助,希望把文章链接给更多的朋友!

大数据热点城市波动图案例【CSS3实现 + 原理分析 + 源码获取】(大数据热点话题)

二:源码获取

源码我已经上传到了资源里,想拿来学习引用的小伙伴直接下载即可,没有会员的可以私聊我 “大数据热点图” 免费获取,下方是源码的资源链接

大数据热点波动图,纯css3实现-Javascript文档类资源-CSDN下载通过css3动画设置的大数据热点波动图,主要利用了animation动画更多下载资源、学习资料请访问CSDN下载频道.https://download.csdn.net/download/weixin_52212950/86728456

三:原理分析

原理分析我们分为热点的布局分析与热点向外扩散的动画实现的分析

3.1 布局分析布局我们那单独的一个城市分析,例如地图中北京的 ,其由一个类名为city1的最外层盒子来添加定位以定到目标城市位置,其不设置宽高,大小完全由中心点撑起(即第二个类名为center的盒子) ,波纹其实是有三个圈圈组成的,最开始是完全重合的,用中心小算法来保证其永远是围绕center来扩散的。 <div class="city1"> <div class="center1"></div> <p class="bj">Beijing</p> <div class="bw1"></div> <div class="bw2"></div> <div class="bw3"></div> </div>波纹的样式添加我们采用了属性选择器 .city1 div[class^="bw"],即选择父类city1里面类名以bw开头的所有子div标签 .city1{ position: absolute; top: 370px; right: 403px; color: aliceblue; } .center1{ width: 5px; height: 5px; background-color: rgb(255, 255, 255); box-shadow: 0 0 12px 2px #fff; border-radius: 50%; } .city1 div[class^="bw"]{ position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 5px; height: 5px; box-shadow: 0 0 7px #fff; border-radius: 50%; animation: scla 3s linear infinite; } .map .city1 div.bw2{ animation-delay: 1s; } .map .city1 div.bw3{ animation-delay: 2s; }3.2 动画分析本次添加的关键帧为:0%的时候波纹是完全不透明的,50%的时候宽高均变大为105px,即圈圈在总动画时间50%的时候要从宽高5px扩散到宽高105px,然后变为半透明状态。再下一个是100%的时候,扩散到宽高150px,并变成完全不透明。要给波纹添加属性:animation: scla 3s linear infinite;  含义为3s做完动画,匀速,并且无限循环为了呈现出波纹一个接一个往外扩散而不是一起扩散,需要给第一个圈圈直接开始扩散,第二个圈圈第三个圈圈设置不同的 animation-delay 动画延迟,第二个设置为1s,第二个设置为2s,这样就可以呈现出一个接一个往外扩散了 /* @keyframes关键帧动画 */ @keyframes scla{ 0% { opacity: 1; } 50% { width: 105px; height: 105px; opacity: 0.5; } 100% { width: 150px; height: 150px; opacity: 0; } } .city3 div[class^="bw"]{ position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 5px; height: 5px; box-shadow: 0 0 7px #fff; border-radius: 50%; animation: scla 3s linear infinite; } .map .city3 div.bw2{ animation-delay: 1s; } .map .city3 div.bw3{ animation-delay: 2s; }四:主要代码<style> *{ margin: 0; padding: 0; box-sizing: border-box; } body{ background-color: rgb(45, 45, 45); } .map{ position: relative; width: 1400px; height: 830px; background-image: url(./img/QX3OPNW5qY.png); background-repeat: no-repeat; background-size: 100%; margin: 0 auto; } .bj{ position: absolute; top: 15px; left: 10px; font-size: 10px; } .Gambia{ position: absolute; top: 15px; left: 10px; font-size: 10px; color:rgb(255, 153, 153) } .Island{ position: absolute; top: 15px; left: 10px; font-size: 10px; } /* 城市1 */ .city1{ position: absolute; top: 370px; right: 403px; color: aliceblue; } .center1{ width: 5px; height: 5px; background-color: rgb(255, 255, 255); box-shadow: 0 0 12px 2px #fff; border-radius: 50%; } .city1 div[class^="bw"]{ position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 5px; height: 5px; box-shadow: 0 0 7px #fff; border-radius: 50%; animation: scla 3s linear infinite; } .map .city1 div.bw2{ animation-delay: 1s; } .map .city1 div.bw3{ animation-delay: 2s; } /* 城市2 */ .city2{ position: absolute; top: 500px; right: 703px; color: aliceblue; } .center2{ width: 5px; height: 5px; background-color: rgb(255, 255, 255); box-shadow: 0 0 12px 2px #fff; border-radius: 50%; } .city2 div[class^="bw"]{ position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 5px; height: 5px; box-shadow: 0 0 7px rgb(255, 149, 149); border-radius: 50%; animation: scla1 3s linear infinite; } .map .city2 div.bw2{ animation-delay: 0.75s; } .map .city2 div.bw3{ animation-delay: 1.5s; } .map .city2 div.bw4{ animation-delay: 2.25s; } /* 城市3 */ .city3{ position: absolute; top: 200px; right: 1003px; color: aliceblue; } .center3{ width: 5px; height: 5px; background-color: rgb(255, 255, 255); box-shadow: 0 0 12px 2px #fff; border-radius: 50%; } /* 属性选择器 正则表达式筛选bw开头类名 */ .city3 div[class^="bw"]{ position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 5px; height: 5px; box-shadow: 0 0 7px #fff; border-radius: 50%; animation: scla 3s linear infinite; } .map .city3 div.bw2{ animation-delay: 1s; } .map .city3 div.bw3{ animation-delay: 2s; } /* @keyframes关键帧动画 */ @keyframes scla{ 0% { opacity: 1; } 50% { width: 105px; height: 105px; opacity: 0.5; } 100% { width: 150px; height: 150px; opacity: 0; } } @keyframes scla1{ 0% { opacity: 1; } 50% { width: 285px; height: 285px; opacity: 0.5; } 100% { width: 330px; height: 330px; opacity: 0; } } </style></head><body> <div class="map"> <div class="city1"> <div class="center1"></div> <p class="bj">Beijing</p> <div class="bw1"></div> <div class="bw2"></div> <div class="bw3"></div> </div> <div class="city2"> <div class="center2"></div> <p class="Gambia">Gambia</p> <div class="bw1"></div> <div class="bw2"></div> <div class="bw3"></div> <div class="bw4"></div> </div> <div class="city3"> <div class="center3"></div> <p class="Island">Island</p> <div class="bw1"></div> <div class="bw2"></div> <div class="bw3"></div> </div> </div></body>
本文链接地址:https://www.jiuchutong.com/zhishi/299556.html 转载请保留说明!

上一篇:ansible命令 运维自动化工具(基于ansible的运维平台)

下一篇:【ChatGPT】ChatGPT 能否取代程序员?(chatb)

  • enscape灯光怎么打(enscape灯光怎么不产生反射)

    enscape灯光怎么打(enscape灯光怎么不产生反射)

  • windows7旗舰版怎么恢复出厂设置(windows7旗舰版怎么连接wifi)

    windows7旗舰版怎么恢复出厂设置(windows7旗舰版怎么连接wifi)

  • 荣耀9x的开机键在哪里(荣耀9开机键坏了怎么开机)

    荣耀9x的开机键在哪里(荣耀9开机键坏了怎么开机)

  • 360路由器初始密码(360路由器初始密码自定义)

    360路由器初始密码(360路由器初始密码自定义)

  • 爱奇艺踢人下线对方有提示吗(爱奇艺踢人下线对方设备如何提示)

    爱奇艺踢人下线对方有提示吗(爱奇艺踢人下线对方设备如何提示)

  • 电视没有网络可以投屏吗(电视没有网络可以看吗)

    电视没有网络可以投屏吗(电视没有网络可以看吗)

  • 笔记本键盘亮着但黑屏怎么办(笔记本键盘亮着屏幕黑屏怎么办)

    笔记本键盘亮着但黑屏怎么办(笔记本键盘亮着屏幕黑屏怎么办)

  • 拼多多卖家不发货会有什么惩罚(拼多多卖家不发货会自动退给买家吗)

    拼多多卖家不发货会有什么惩罚(拼多多卖家不发货会自动退给买家吗)

  • 滴滴时长费怎么计算(滴滴时长计费)

    滴滴时长费怎么计算(滴滴时长计费)

  • 恢复出厂设置病毒还在(恢复出厂设置病毒能清除吗)

    恢复出厂设置病毒还在(恢复出厂设置病毒能清除吗)

  • 电视频道串台怎么办(电视频道串台怎么回事)

    电视频道串台怎么办(电视频道串台怎么回事)

  • 华为nova6返回键怎么设置(华为nova10返回键在哪里设置)

    华为nova6返回键怎么设置(华为nova10返回键在哪里设置)

  • p30手机喇叭有杂音滋滋(华为p30手机喇叭有杂音声音小)

    p30手机喇叭有杂音滋滋(华为p30手机喇叭有杂音声音小)

  • oppo手机照片如何重命名(oppo手机照片如何传送到电脑)

    oppo手机照片如何重命名(oppo手机照片如何传送到电脑)

  • iphone11支持微距拍摄吗(苹果11有没有微距)

    iphone11支持微距拍摄吗(苹果11有没有微距)

  • 抖音被限赞了怎么办(抖音被限制点赞多久恢复正常)

    抖音被限赞了怎么办(抖音被限制点赞多久恢复正常)

  • 高德ar实景导航怎开(高德ar实景导航怎么没有了)

    高德ar实景导航怎开(高德ar实景导航怎么没有了)

  • seoer是什么意思(seoseoo什么意思)

    seoer是什么意思(seoseoo什么意思)

  • 港版苹果11有双卡双待吗(港版苹果11是不是双卡)

    港版苹果11有双卡双待吗(港版苹果11是不是双卡)

  • 电脑自带浏览器在哪(电脑自带浏览器Microsoft Edge打不开怎么办?)

    电脑自带浏览器在哪(电脑自带浏览器Microsoft Edge打不开怎么办?)

  • 交易猫需要保证金吗(交易猫交易账号需要保证金吗)

    交易猫需要保证金吗(交易猫交易账号需要保证金吗)

  • p30语音助手在哪里(p30手机语音助手在哪)

    p30语音助手在哪里(p30手机语音助手在哪)

  • 电脑故障检测与维修基本知识(电脑故障检测与维护方法)

    电脑故障检测与维修基本知识(电脑故障检测与维护方法)

  • 什么叫征期抄税?
  • 年度纳税申报表A105000纳税调整项目明细表中,收入
  • 控股子公司注销了可以起诉总公司吗怎么办
  • 企业的主要经营哲学理念
  • 财务报表申报错误怎么办
  • 出口业务运费可以抵扣吗
  • 购买厨房用品属于什么费用
  • 物料损失怎么入账
  • 代缴水电费如何做账
  • 小规模纳税人水利基金怎么报税
  • 债务清偿抵充的案例
  • 跨年度发现的差错
  • 电商平台收取会员费吗
  • 股东退股分红怎么拿回
  • 当期软件产品可抵扣进项税额 留抵
  • 以前年度漏记一笔短期借款但本金利息支出记账了
  • 年金计算个税需要扣除吗
  • 增值税专用发票验证真伪
  • 法院拍卖破产企业房产,税费问题
  • 租个人房屋办公怎么租
  • 增值税免税标准30万含不含税
  • 支付水电费如何记账
  • 返利销售会计处理办法
  • 老板垫付的钱应该怎么做科目
  • 暂估入账冲回
  • prevsrv.exe - prevsrv是什么进程 有什么用
  • 固定资产净值与原值的区别
  • opencart 二次开发
  • PHP:Memcached::setByKey()的用法_Memcached类
  • 企业所得税汇算交税分录
  • 纳税调整项目有一个其他调增金额是怎么组成的
  • 车辆开具发票后会计分录?
  • php中的异常和错误怎么写
  • let,const,var区别
  • 匈牙利算法的实现原理
  • 程序员未来会失业吗
  • 小规模纳税人年收入超过500万必须转为一般纳税人吗
  • 银行的抵债资产是否需要缴纳房产税
  • 未开票金额怎么填写
  • phpcms模板下载
  • python之sqlalchemy创建表的实例详解
  • 视同销售的会计处理是指?
  • 汇算清缴没有调整怎么办
  • 外经证办好了后怎么开票
  • 报表中的存货是什么
  • 完税凭证是什么样子
  • 无形资产摊销方法应反映其经济利益的预期实现方式
  • 暂估的应付账款需要调整报表吗
  • 注册资本实缴制改为认缴制
  • 出口退税贷方余额是什么意思
  • 反记账是什么
  • 会计循环属于什么流程
  • 年初建账考虑要点业务流程是否变化
  • 开启 windows server
  • Win7系统如何关闭自动更新
  • win8系统怎么创建局域网
  • ubuntu nginx webdav
  • 返回场景和音乐的区别
  • unity3d 游戏开发 消息通信
  • Begin OpenGL with Python-1st Day,draw a simple sample.
  • nodejs npm package.json中文文档
  • shell判断文件
  • flask开发实例
  • js 实现跳转页面
  • javascript有几种类型
  • Python中的def
  • Windows上使用PD虚拟机
  • python3 split()
  • 发票查询为什么查不出来
  • 甘肃国家税务局兰州专用章图片
  • 广州市税务局官网电话
  • 定额发票怎么查看有效期
  • 新疆12366电子税务局官网手机版
  • 安徽省地方税务局公告2016年第1号
  • 南通 医疗
  • 芜湖办税服务厅
  • 湖北国税办税人是谁
  • 信用体系建设
  • 新疆房车自驾营地
  • 开票风险预警机制黄色预警严重吗?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设