最近,各种朋友圈,社会媒体,都在疯传一张图,这张图显示的全球的气温图,本没有什么特别的,但是这张图的网站来源所展示的数据与气象局或者各种天气预报的温度值相差倒是不少,引来一片网友的吐槽。

但是,作为专业的Giser,总喜欢研究一番这个网站有啥稀奇的,不看还好,看了以后,发现还是有很多值得挖掘的有用信息。

1、这个网站的全球温度图是否能拿来所用?

经过一番的扒揪,发现了一系列的url,都是这个样子的,
https://maps-raw.darksky.net/1564214400/temperature_k/7/105/49.jpg,
哈啊哈,搞开发的人看到这个就会眼睛一亮,这个不就是瓦片嘛,立马写了个简单的加载瓦片的页面,跑一下,果真,标准的瓦片的服务地址。

加载代码:

  • var map = L.map("map", {
  • center: [32.045332838858506, 102.78808593750001],
  • zoom: 5
  • });
  • L.tileLayer('https://maps-raw.darksky.net/1564214400/temperature_k/{z}/{x}/{y}.jpg').addTo(map);

但是,这里面的1564214400这个是什么鬼,看起来是不是很像时间呢,于是在控制台下,随便写了几句话。

是不是很像,就是这个时间的前10位啦。。。于是这个网站的显示有关技术就被扒干净了。

2、这个全球的气温图是咋生成的?

之前,我们有过基于全国的气温散点数据进行插值生成气温、降水的色斑图,但是这个更加高级,不光有温度的色斑图,还有地形信息,只能是假设了,先弄一份全球的地形dem,然后制作地形晕渲图(大学里面有试验课程,用Arcgis制作地形晕渲图,类似),再用超级计算机,高精度插值生成全球的温度图,最后两者叠加,最后切成瓦片。

3、我们还能做什么?

应用一:时态温度分析

既然瓦片服务提供了时间参数,我们可以利用这个维度进行时态温度分析,可以自由选择感兴趣的时间点查看全球温度分布。原始gif(1920*1080)文件过大,这里是压缩过后的,如果需要原始文件的可以联系我

更多的详情见GIS之家小专栏

对本专栏感兴趣的话,可以关注一波

挖掘Dark Sky Maps(热的要死后,疯传的一个气温地图网站)的更多相关文章

  1. (转)IE6 死后即将大快人心的10件事

    (转)未来五年程序员应当具备的十项技能 W3C CSS 2.1 Specification(Quick Table of Contents) (转)IE6 死后即将大快人心的10件事 2009-04- ...

  2. 原来热加载如此简单,手动写一个 Java 热加载吧

    1. 什么是热加载 热加载是指可以在不重启服务的情况下让更改的代码生效,热加载可以显著的提升开发以及调试的效率,它是基于 Java 的类加载器实现的,但是由于热加载的不安全性,一般不会用于正式的生产环 ...

  3. 在Google Maps 上点击标签后显示说明

    JS如下: (function() {     window.onload = function() {           // Creating an object literal contain ...

  4. Maven项目热部署,修改代码后不用重启tomcat服务器

    只需要在pom.xml文件中添加 <build> <finalName>MySSM</finalName> <!-- 指定部署的服务器类型 --> &l ...

  5. Tomcat热部署--start tomcat后就可自动部署war包

    使用tomcat图形化界面,需要现在配置文件中设置用户名和密码: 在maven中配置Tomcat插件: root目录下的内容可以直接访问: 跳过测试: 查看端口占用:

  6. node.js之nodemon 代码热更新 修改代码后服务器自动重启

    1.安装nodemon: npm install -g nodemon //全局安装 npm install nodemon --save //局部安装 2.在项目根目录下创建 nodemon.jso ...

  7. Swift让编程更简单 人人都是开发者

    全称为苹果全球开发者大会的WWDC,每年的这个时候,都会如这段时间前后所举行的Google I/O 和微软的BUILD开发者会议一样,吸引全球科技媒体的目光.近几年来,因为在会上爆的猛料越来越多,“开 ...

  8. 容器化VS微服务

    1 微服务 1.1 思想 开发人员自己测试.部署和运维自己编写的代码,即自己负责构建生命周期的全部. 1.2 Spring Boot 提供服务化的能力,即把容器.服务所需依赖和服务一起打包成一个jar ...

  9. Circle of Monsters(贪心)

    n个怪物围成一圈,每个怪物有自己的血量和爆炸伤害. 怪物在死后会对下一个怪物造成爆炸伤害,又死了又可以爆炸...... 你每发子弹可以对怪物造成1点伤害,求杀死所有怪物的最小子弹数. 传送门 \(\c ...

随机推荐

  1. Spring MVC上传文件原理和resolveLazily说明

    问题:使用Spring MVC上传大文件,发现从页面提交,到进入后台controller,时间很长.怀疑是文件上传完成后,才进入.由于在HTTP首部自定义了“Token”字段用于权限校验,Token的 ...

  2. springboot-整合多数据源配置

    简介 主要介绍两种整合方式,分别是 springboot+mybatis 使用分包方式整合,和 springboot+druid+mybatisplus 使用注解方式整合. 一.表结构 在本地新建两个 ...

  3. 大数据之Linux基础

    回顾这一个多月以来闭关学大数据的一些相关重要知识,就当复习,顺便以备以后查看 Linux学习第一步自然是安装Linux. 关于Linux 首先介绍下Linux,Linux系统很多程序员开发者其实都耳熟 ...

  4. 自定义 cell

    自定义 cell 1 什么是自定义 cell 自定义 cell 即 tableView,collectionView,scrollView中的 cell 使用的时候不能满足我们使用 cell 的需求, ...

  5. 使用flatbuffers

    问题 张三是个java程序员,他写产生数据的程序.李四是个python程序员,他要用python处理张三产生的数据.最直观常用的方法就是张三用java把产生的数据保存成csv或者xml文件,然后李四用 ...

  6. Day 06 作业

    目录 Python基础实战之猜数字游戏 Python进阶实战之三级菜单 Python基础实战之猜数字游戏 给定数字,用户可以猜三次年龄 数字猜对,让用户选择两次奖励 用户选择奖励后可以退出 impor ...

  7. vue-cli开发项目,调用html5+接口,hbuilder真机运行,打包

    开发中使用vue-cli正常开发 将配置文件中的路径改为相对路径--否则在打包之后真机运行时无法找到指定路径 开发完或者开发途中想要查看调用h5+的api效果就需要打包了 npm run build ...

  8. 【Git】学习开始

    [Git]学习开始 转载:https://www.cnblogs.com/yangchongxing/p/10172683.html 在线电子书籍:https://git-scm.com/book/z ...

  9. 网络配置工具iproute2和net-tools的基本原理和基本使用方法

    这是网络程序设计课程的第一次作业的博客,由于还是小白,分享的内容都是比较基础的东西,希望看到的各位同学可以提出指导意见,必将虚心听取. 这次分享的内容是网络配置工具iproute2和net-tools ...

  10. Android WebView 基本设置与H5 交互

    mWebView.setDrawingCacheEnabled(true); WebChromeClient webChromeClient = new WebChromeClient(); mWeb ...