当前位置: 首页 > news >正文

手机网站建设服务器企点官网

手机网站建设服务器,企点官网,旅行社手机网站建设,网页毕业设计说明书首先需要一段热力信息的json,我放在头部了。 然后就是需要de-geo库了。 实现代码如下: import * as d3geo from d3-geoimport trafficJSON from ../assets/json/traffic.jsonlet geoFun;// 地理投影函数// let info {max: Number.MIN_SAFE_INTEGER,mi…

首先需要一段热力信息的json,我放在头部了。

然后就是需要de-geo库了。

实现代码如下:

    import * as d3geo from 'd3-geo'import trafficJSON from '../assets/json/traffic.json'let geoFun;// 地理投影函数// let info = {max: Number.MIN_SAFE_INTEGER,min: Number.MAX_SAFE_INTEGER,maxlng: Number.MIN_SAFE_INTEGER,minlng: Number.MAX_SAFE_INTEGER,maxlat: Number.MIN_SAFE_INTEGER,minlat: Number.MAX_SAFE_INTEGER,data: []};// 初始化地理投影const initGeo = (size) => {geoFun = d3geo.geoMercator().scale(size || 100)}// 经纬度转像素坐标const latlng2px = (pos) => {if (pos[0] >= -180 && pos[0] <= 180 && pos[1] >= -90 && pos[1] <= 90) {return geoFun(pos);}return pos;};// 创建颜色const createColors = (option) => {const canvas = document.createElement('canvas');document.body.appendChild(canvas);const ctx = canvas.getContext('2d');canvas.width = 256;canvas.height = 1;const grad = ctx.createLinearGradient(0, 0, canvas.width, canvas.height);for (let k in option.colors) {grad.addColorStop(k, option.colors[k]);}ctx.fillStyle = grad;ctx.fillRect(0, 0, canvas.width, canvas.height);return ctx.getImageData(0, 0, canvas.width, 1).data;}// 绘制圆const drawCircle = (ctx, option, item) => {let { lng, lat, value } = item;let x = lng - option.minlng + option.radius;let y = lat - option.minlat + option.radius;const grad = ctx.createRadialGradient(x, y, 0, x, y, option.radius);grad.addColorStop(0.0, 'rgba(0,0,0,1)');grad.addColorStop(1.0, 'rgba(0,0,0,0)');ctx.fillStyle = grad;ctx.beginPath();ctx.arc(x, y, option.radius, 0, 2 * Math.PI);ctx.closePath();ctx.globalAlpha = (value - option.min) / option.size;ctx.fill();}// 创建热力图const createHeatmap = (option) => {const canvas = document.createElement('canvas');document.body.appendChild(canvas);canvas.width = option.width;canvas.height = option.height;const ctx = canvas.getContext('2d');option.size = option.max - option.min;option.data.forEach((item) => {drawCircle(ctx, option, item);});const colorData = createColors(option);const imageData = ctx.getImageData(0, 0, canvas.width, canvas.height);for (let i = 3; i < imageData.data.length; i = i + 4) {let opacity = imageData.data[i];let offset = opacity * 4;//redimageData.data[i - 3] = colorData[offset];//greenimageData.data[i - 2] = colorData[offset + 1];//blueimageData.data[i - 1] = colorData[offset + 2];}ctx.putImageData(imageData, 0, 0);}// 初始化const init = () => {initGeo(1000)// 处理数据trafficJSON.features.forEach((item) => {let pos = latlng2px(item.geometry.coordinates);// 经纬度转像素坐标let newitem = {lng: pos[0],lat: pos[1],value: item.properties.avg}info.max = Math.max(newitem.value, info.max);info.maxlng = Math.max(newitem.lng, info.maxlng);info.maxlat = Math.max(newitem.lat, info.maxlat);info.min = Math.min(newitem.value, info.min);info.minlng = Math.min(newitem.lng, info.minlng);info.minlat = Math.min(newitem.lat, info.minlat);info.data.push(newitem);})info.size = info.max - info.min;info.sizelng = info.maxlng - info.minlng;info.sizelat = info.maxlat - info.minlat;const radius = 50;createHeatmap({width: info.sizelng + radius * 2,height: info.sizelng + radius * 2,colors: {0.1: '#2A85B8',0.2: '#16B0A9',0.3: '#29CF6F',0.4: '#5CE182',0.5: '#7DF675',0.6: '#FFF100',0.7: '#FAA53F',1: '#D04343'},radius,...info})}init();

http://www.yidumall.com/news/11976.html

相关文章:

  • 免费个人网站空间如何做好企业推广
  • 电子业网站建设中视频自媒体平台注册
  • 有没有做卡商的网站网络营销是什么
  • 模板建站有什么不好?网站开发的公司
  • 网站建设 费用长春seo网站优化
  • 网站打开速度慢优化产品推广渠道有哪些
  • 合肥专业网站建设百度手机助手app官方下载
  • 网站空间1g多少钱一年爱站网关键词挖掘
  • 襄阳网站建设xytzgbing搜索引擎
  • 微信分销网站建设电话产品推广运营方案
  • 全球vi设计公司seo营销是什么
  • wordpress自建站seo外包公司哪家专业
  • 制作视频用什么软件沈阳百度seo
  • 温州市网站制作多少钱立即优化在哪里
  • wordpress素才win10优化工具下载
  • 做网站总结与体会360优化大师官方官网
  • 做网站运营有前景么视频号广告推广
  • 网站建设标准流程及外包注意事项seo是如何做优化的
  • 上海焱灿网络windows优化大师是系统软件吗
  • 建卖手机网站上海优化seo
  • 什么网站做兼职最好廊坊关键词快速排名
  • 阿里巴巴国际站下载广东省最新疫情
  • 宁夏网站设计在哪里广告推广方案怎么写
  • 印度喜欢用什么框架做外贸网站百度投诉电话24小时
  • 合肥做网站的开发一个平台需要多少钱
  • 网站推广只能使用在线手段进行。友情链接多少钱一个
  • wordpress端口配置云南seo网络优化师
  • wordpress主题slcorp破解成都关键词seo推广平台
  • 网站维护一般多久百度推广后台登陆入口
  • 手机如果做网站线上推广方式有哪些