Heatmap.js 一个强大简易的web动态热图
Heatmap.js 一个强大简易的web动态热图
最近在做热力图效果,背景图上绘制热力图,最开始使用的事Echarts,但是Echarts绘制是基于map,还其他一些第三方的库也很多基于map,还要进行坐标转化,麻烦的一批;最后还是研究一下heatmap.js这个库。
by the way:需求迫于无奈使用了阿里的G2,交互效果勉强符合,但是看他们的API的时候,真的是麻烦的一批啊,API很多很乱,慎用。
接下来看Heatmap.js:
官网:http://www.patrick-wied.at/static/heatmapjs/
api:http://www.patrick-wied.at/static/heatmapjs/docs.html
官网例子:http://www.patrick-wied.at/static/heatmapjs/examples.html
直接上demo代码
<head><meta charset="UTF-8"><title></title><style>div {width: 600px;height: 400px;border: 1px solid;border-color: grey;}</style>
</head><body><div id="heatmap"></div>
</body>
<script src="js/heatmap.js"></script>
<script type="text/javascript">// 创建一个heatmap实例对象// “h337” 是heatmap.js全局对象的名称.可以使用它来创建热点图实例// 这里直接指定热点图渲染的div了.heatmap支持自定义的样式方案,网页外包接活具体可看官网apivar heatmapInstance = h337.create({container: document.querySelector('#heatmap'),// canvas: document.querySelector('#heatmap'), // 其实还可以传canvas对象,看一下源码就知道了,源码很显而易见,代码不多,逻辑清晰,有那么一丝丝感觉有些地方写的不好backgroundColor: '#fff',gradient: { // 数值为[0,1],数值大的在光圈内侧,数值相等则靠下的生效,数值设置不分大小顺序,并可以同时设置很多颜色'0': 'blue','0.2': 'blue','0.4': 'green','0.6': 'green','0.8': 'yellow','1': 'red'},// radius: 40, // 设置光圈的半径大小,值>=0,=0取得是默认值// opacity: 0.7, // 光圈透明度设置[0,1],如果值设置了,会重写maxOpacity和minOpacity的值maxOpacity: .5, minOpacity: 0,// blur: .9});//构建一些随机数据点,网页切图价格这里替换成你的业务数据var points = [];var max = 0;var width = 600;var height = 400;var len = 200;while (len--) {var val = Math.floor(Math.random() * 100);max = Math.max(max, val);var point = {x: Math.floor(Math.random() * width),y: Math.floor(Math.random() * height),value: val};points.push(point);}var data = {max: max,data: points};57 //因为data是一组数据,web切图报价所以直接setDataheatmapInstance.setData(data); //数据绑定还可以使用
</script></html>
heatma.js 要自己下载
API大概唠叨一下:
API一定要去官网去看一下,官网写的很简单,但是也很简单明了。
创建heatmap实例,configObject是一个json对象,里面有很多参数:
container 页面操作div的dom对象,如div的id为test,可以写成
backgroundColor 画板的背景颜色设置,支持rgb(a),颜色名称,但必须要用引号
gradient 设置热点图的光圈颜色,数值为[0,1],数值大的在光圈内侧,数值相等则靠下的生效,数值设置不分大小顺序,并可以同时设置很多颜色
radius 设置光圈的半径大小,值>=0,=0取得是默认值
opacity 光圈透明度设置[0,1],如果值设置了,会重写maxOpacity和minOpacity的值
截图代码我自己稍微改了改,无伤大雅,就是告诉大家,可以灵活使用,如果运用require方式的话
Heatmap.js 一个强大简易的web动态热图相关推荐
- Heatmap.js – 最强大的 Web 动态热图
Heatmap.js – 最强大的 Web 动态热图 最新公司项目需要用到热力图,在百度上搜下,了解到heatmap.js这款神器.然后搜了下例子,却很难搜到马上出效果的例子,特此写一篇heatma ...
- JS实现某东移动web轮播图
移动web轮播图 参考实例,可以从中保存轮播图的图片,这里我们放入uploads的文件夹下,将八张图片一次改为l1.jpg,l2.jpg-(最后面都demo) https://m.jd.com/ HT ...
- Reveal.js一个用来做WEB演示文稿的框架
reveal.js是一个能够帮助我们很轻易地使用HTML来创建漂亮的演示效果,也就是我们常见的PPT幻灯片.reveal.js不依赖其他任何javascript库,是一个独立的javascript插件 ...
- 分享一个404页面(猴子动态SVG图)
404 SVG 动画 分享一个比较好看的404页面! 原地址:https://codepen.io/thejohnyagiz/pen/npDyq 防止原页面失效,代码 粘贴在下面 <!DOCTY ...
- achartengine一个布局中多条动态折线图实时更新效果
package com.example.chenwifi; import java.util.Date; import java.util.Timer;
- 34.35.热图(heatmap)、创建带注释的热图、使用辅助函数的代码样式、图像显示、图像插值、将图像数据导入Numpy数组、将numpy数组绘制为图像
34.热图(heatmap) 34.1.创建带注释的热图 34.2.使用辅助函数的代码样式 35.图像显示 35.1.图像插值 35.2.将图像数据导入Numpy数组 35.3.将numpy数组绘制为 ...
- heatmap(热图)
热图有时候叫热区图或者热力图,都是用于表现某种事物密集度的图形化显示. 我写的这个没有画底图,不然会更好趣,比如一个键盘,一张房屋平面图,或者一张Google地图,拿它做什么用,完全取决于你的需要. ...
- 每天一个前端小技巧——生成gif动图下载
每天一个前端小技巧--生成gif动图下载 动态热图的展现,分别展现某个时间段的热图时间变化,例如:最近一周七天内,每天的热图分布变化图:这个动态变化的图生成一个gif图提供下载是否可行? 实现方案: ...
- 差异表达基因热图怎么看_差异基因热图绘制:heatmap.2
在RNA-seq数据分析中,差异表达基因分析是一项基本的技能,其中热图又是一种特别常见的用来展示差异表达基因分析结果的方式,今天分享一个非常好用的绘制热图的R函数:heatmap.2.该函数来自gpl ...
最新文章
- 英特尔cpu发布时间表_英特尔第11代桌面CPU将会支持PCIe4.0,Z490主板或可支持PCIe4.0...
- 数据切分——Mysql分区表的管理与维护
- leetcode 636. Exclusive Time of Functions | 636. 函数的独占时间(Stack)
- java gc回收区域_java内存区域以及GC回收
- the python challenge_The Python Challenge 谜题全解(持续更新)
- php 结尾,PHP“意外结束”
- C# 正则表达式整理
- SDL 从内存流中加载图像并显示
- c语言课程设计物业,C语言课程设计报告--物业管理系统.doc
- 面向创意设计人员的CATIA
- D. Bash and a Tough Math Puzzle
- 【Fusion】Mosek.Fusion基础
- 如何向github上传代码
- Gym - 100886D 2015-2016 Petrozavodsk Winter Training Camp, Saratov SU Contest D - Catenary
- web前端网页制作 小组作业(制作一个简单的小网页)
- HC05和电脑蓝牙通讯
- xubuntu16.04修改开关机动画
- Arduino NBIoT使用方法一
- 7-1 寻找大富翁 (25 分)
- 分享国内外好用的H5页面制作网站