挖掘Dark Sky Maps(热的要死后,疯传的一个气温地图网站)
最近,各种朋友圈,社会媒体,都在疯传一张图,这张图显示的全球的气温图,本没有什么特别的,但是这张图的网站来源所展示的数据与气象局或者各种天气预报的温度值相差倒是不少,引来一片网友的吐槽。
但是,作为专业的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(热的要死后,疯传的一个气温地图网站)的更多相关文章
- (转)IE6 死后即将大快人心的10件事
(转)未来五年程序员应当具备的十项技能 W3C CSS 2.1 Specification(Quick Table of Contents) (转)IE6 死后即将大快人心的10件事 2009-04- ...
- 原来热加载如此简单,手动写一个 Java 热加载吧
1. 什么是热加载 热加载是指可以在不重启服务的情况下让更改的代码生效,热加载可以显著的提升开发以及调试的效率,它是基于 Java 的类加载器实现的,但是由于热加载的不安全性,一般不会用于正式的生产环 ...
- 在Google Maps 上点击标签后显示说明
JS如下: (function() { window.onload = function() { // Creating an object literal contain ...
- Maven项目热部署,修改代码后不用重启tomcat服务器
只需要在pom.xml文件中添加 <build> <finalName>MySSM</finalName> <!-- 指定部署的服务器类型 --> &l ...
- Tomcat热部署--start tomcat后就可自动部署war包
使用tomcat图形化界面,需要现在配置文件中设置用户名和密码: 在maven中配置Tomcat插件: root目录下的内容可以直接访问: 跳过测试: 查看端口占用:
- node.js之nodemon 代码热更新 修改代码后服务器自动重启
1.安装nodemon: npm install -g nodemon //全局安装 npm install nodemon --save //局部安装 2.在项目根目录下创建 nodemon.jso ...
- Swift让编程更简单 人人都是开发者
全称为苹果全球开发者大会的WWDC,每年的这个时候,都会如这段时间前后所举行的Google I/O 和微软的BUILD开发者会议一样,吸引全球科技媒体的目光.近几年来,因为在会上爆的猛料越来越多,“开 ...
- 容器化VS微服务
1 微服务 1.1 思想 开发人员自己测试.部署和运维自己编写的代码,即自己负责构建生命周期的全部. 1.2 Spring Boot 提供服务化的能力,即把容器.服务所需依赖和服务一起打包成一个jar ...
- Circle of Monsters(贪心)
n个怪物围成一圈,每个怪物有自己的血量和爆炸伤害. 怪物在死后会对下一个怪物造成爆炸伤害,又死了又可以爆炸...... 你每发子弹可以对怪物造成1点伤害,求杀死所有怪物的最小子弹数. 传送门 \(\c ...
随机推荐
- iOS UILable和属性字符串的使用
UILable的常用方法和属性 设置文字颜色(默认为黑色) @property(nonatomic,strong) UIColor *textColor 设置显示文字 @property(no ...
- dubbo服务治理框架
Dubbo的概述 1.1. Dubbo的背景 随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进. ...
- Django 2.0.7 使用小知识
Django 2.0.3 使用小知识 运行环境: Python 3.6.4 Django 2.0.7 Django Admin中model显示为中文 定义model时,定义一个Meta对象,设置需要显 ...
- Orleans在.net core的开发
Goods 服务 启动 using System; using System.Collections.Generic; using System.Linq; using System.Net; usi ...
- 攻略前端面试官(三):JS的原型和原型链
本文在个人主页同步更新~ 背就完事了 介绍:一些知识点相关的面试题和答案 使用姿势:看答案前先尝试回答,看完后把答案收起来检验成果~ 面试官:什么是构造函数 答:构造函数的本质是一个普通函数,他的特点 ...
- 深入探索Java设计模式之单例模式
单例模式可确保在给定的时间实例中只能创建一个具有全局访问点的对象.这是面向对象编程中最常用的技术之一.尽管它很简单,但从类设计的角度来看可能是最简单的,但是在尝试实现它们之前,必须先解决一些细微的问题 ...
- C语言每日一练——第7题
一.题目要求 已知数据文件in.dat中存有200个四位数,把这些数存到数组a中,编写函数jsVal(),其功能是:把千位数字和十位数字重新组成一个新的含有两位数字的数ab(新数的十位数字是原四位数的 ...
- 《Java基础知识》流程控制
流程控制分类: 一.顺序结构如果没有流程控制(即没有分支结构和循环结构),Java方法里面的语句是一个顺序执行流,从上到下依次执行每条语句. 二.分支结构1.if语句if语句使用布尔表达式或者布尔值作 ...
- GHOST CMS - Package.json
Package.json The package.json file is a set of meta data about a theme. package.json 文件是一组关于主题的元数据. ...
- python操作文件和目录查看、创建、删除、复制
python内置了os模块可以直接调用操作系统提供的接口函数,os.name查询的是操作系统,‘nt’表示windows系统 >>> import os >>> o ...