a openlayers extension to windjs
git clone https://github.com/sakitam-fdd/wind-layer.git
npm install
npm run dev
npm run build
npm install wind-layer --save
import WindLayer from 'wind-layer'
目前可通过 unpkg.com / jsdelivr 获取最新版本的资源。
// jsdelivr (jsdelivr由于缓存原因最好锁定版本号,否则可能会出现意料之外的问题)
https://cdn.jsdelivr.net/npm/[email protected]/dist/windLayer.js
https://cdn.jsdelivr.net/npm/[email protected]/dist/windLayer.min.js
// npm
https://unpkg.com/wind-layer/dist/windLayer.js
https://unpkg.com/wind-layer/dist/windLayer.min.js
天气数据由全球预报系统(GFS)生成, 由美国国家气象局管理。 预测每天产生四次,并可用于 从NOMADS下载。 这些文件位于GRIB2 格式并包含超过300条记录。 我们只需要这些记录中的一小部分就可以在特定的等压线上可视化风资料。 下面的命令下载 1000 hPa风向量,并使用grib2json将它们转换为JSON格式。
YYYYMMDD=<a date, for example: 20140101>
curl "http://nomads.ncep.noaa.gov/cgi-bin/filter_gfs.pl?file=gfs.t00z.pgrb2.1p00.f000&lev_10_m_above_ground=on&var_UGRD=on&var_VGRD=on&dir=%2Fgfs.${YYYYMMDD}00" -o gfs.t00z.pgrb2.1p00.f000
grib2json -d -n -o current-wind-surface-level-gfs-1.0.json gfs.t00z.pgrb2.1p00.f000
cp current-wind-surface-level-gfs-1.0.json <earth-git-repository>/public/data/weather/current
默认运行在3000端口, 使用koa2构建。 目前仅抓取少量数据, 全部数据数据量过大会造成抓取时间过长和转换失败。
npm run dev:server // 调试环境启动服务
npm run prd:server // 部署环境启动服务
url | params | desc |
---|---|---|
autofetch |
null |
无需参数,开启自动抓取程序,默认30分钟抓取一次数据源 |
stopautofetch |
null |
停止自动抓取程序 |
getdata |
Object (目前只支持time 参数,时间戳) |
获取json数据,存在转换过的直接返回,若只存在元数据则转换后返回,若元数据也不存在则抓取转换后再响应 |
gribdata |
Object (目前只支持time 参数,时间戳) |
获取grib2数据(强制抓取数据) |
getSourceTree |
null |
无需参数,获取抓取的数据源 grib2 源数据。返回一个list,包含文件名和服务器地址。 |
getParseTree |
null |
无需参数,获取转换后的 json 数据。返回一个list,包含文件名和服务器地址。 |
getDataByFileName |
{ filename } |
通过文件名请求 json 数据,文件名可为源数据文件和json文件名 |