Difference between revisions of "区域降水实况栅格图API"

From CaiyunWiki
Jump to: navigation, search
(Blanked the page)
Line 1: Line 1:
 +
# 中国区域降水实况栅格图 API 说明
  
 +
> 北京彩彻区明科技有限公司
 +
 +
## 1.API概述 :
 +
 +
* 中国区域降水实况栅格图 API 提供三种文件:降水强度图、可用区域mask图、雨雪类型mask图;
 +
* 文件名为格林威治时间,提供最近十帧(45分钟历史+当前最新),每5分钟更新1次(每小时12次,从00H:00M开始);
 +
* 等经纬度投影,栅格分辨率 (6000 * 7500) ,  纬经度分辨率近似为(0.009, 0.0105),(经度分辨率0.0105非准确值);
 +
* 数据第1维 (3.9079N ~ 57.9079N)纬度,第2维 (71.9282E ~ 150.6026E)经度;
 +
* 栅格数据索引和经纬度之间的转换详见下面示例代码;
 +
* 提供的数据如下:
 +
    * 1.降水强度图,数据uint8存储,除以255为彩云降水强度(等于0~1.0之间);
 +
    * 2.降水类型图,数据uint8存储,255代表此像素为雪(固态),100代表此像素为雨(液态),0代表不可用;
 +
    * 3.可用区域图,数据uint8存储,255代表可用(不缺测),0代表不可用。
 +
 +
## 2.API调用方式:
 +
 +
1. API接口:[http://api.caiyunapp.com/v1/radar/cndata?token={](http://api.caiyunapp.com/v1/radar/cndata?token=$YOUR_TOKEN)[$YOUR_TOKEN](http://api.caiyunapp.com/v1/radar/cndata?token=$YOUR_TOKEN)}
 +
2. 调用API 获取十帧图的url:降水强度图(共10张)、降水类型图(共10张)、可用区域图(共10张)
 +
3. 降水强度图示例:http://cdn.caiyunapp.com/weather/radar/cnmap_precp_201810250540_7bdef9f9ac.png
 +
4. 降水类型图示例:http://cdn.caiyunapp.com/weather/radar/cnmap_precptype_201810250540_7bdef9f9ac.png
 +
5. 可用区域图示例:http://cdn.caiyunapp.com/weather/radar/cnweight_raw_201810250540_7bdef9f9ac.png
 +
 +
## 3.API返回示例:
 +
 +
```
 +
全国降水图API返回 ([http://api.caiyunapp.com/v1/radar/cndata?token=](http://api.caiyunapp.com/v1/radar/cndata?token=$YOUR_TOKEN)[{](http://api.caiyunapp.com/v1/radar/cndata?token=$YOUR_TOKEN)[$YOUR_TOKEN](http://api.caiyunapp.com/v1/radar/cndata?token=$YOUR_TOKEN)}
 +
示例如下:
 +
`{`
 +
**status**: "ok",
 +
**cndata**: [
 +
        {
 +
          ## 降水强度图(UTC+0 格林威治时间) 
 +
**          data_url**: "cdn.caiyunapp.com/weather/radar/
 +
                    cnmap_precp_201810250540_7bdef9f9ac.png",
 +
**          **## 降水类型图(UTC+0 格林威治时间)
 +
          **data_type_url**: "cdn.caiyunapp.com/weather/radar/
 +
                          cnmap_precptype_201810250540_7bdef9f9ac.png",
 +
**          **## 可用区域图(UTC+0 格林威治时间)
 +
          **weight_url**: "cdn.caiyunapp.com/weather/radar/
 +
                      cnweight_raw_201810250540_7bdef9f9ac.png",
 +
**          datatime**: 1540446000, # 降雨图的时间戳(UTC+0 格林威治时间)
 +
**          lat**: [3.9079,57.9079], # 纬度范围
 +
**          lng**: [71.9282,150.6026], # 经度范围
 +
**          unit**: "grey scale" # 灰度单位,降雨图数据除以255为彩云降水强度;
 +
                            #  可用范围数据中,255代表可用,0代表不可用
 +
          },
 +
          ...
 +
        ]
 +
 +
```
 +
 +
## 4.参考代码:
 +
 +
```
 +
##根据用户经纬度,获取彩云降水*(雪)*强度**
 +
##lat_interval, lng_interval = 0.009, 0.0105**
 +
from scipy.misc import imread
 +
VALID = 255
 +
NORM = 255
 +
lats = [3.9079, 57.9079]
 +
lngs = [71.9282, 150.6026]
 +
lat_size, lng_size = 6000, 7500
 +
 +
def latlng2xy(lat, lng):
 +
    y = int((lng - lngs[0]) / (lngs[1] - lngs[0]) * lng_size)
 +
    x = int((lats[1] - lat) / (lats[1] - lats[0]) * lat_size)
 +
    return x, y
 +
 +
data = imread('[cnmap_precp_201810250540_7bdef9f9ac.png](http://cdn.caiyunapp.com/weather/radar/cnmap_precp_201807101700_fff3451c8a.png)')
 +
weight = imread('[cnweight_raw_](http://cdn.caiyunapp.com/weather/radar/cnweight_raw_201807101700_fff3451c8a.png)[201810250540_7bdef9f9ac.png](http://cdn.caiyunapp.com/weather/radar/cnmap_precp_201807101700_fff3451c8a.png)')
 +
lat_size, lng_size = data.shape  ##(6000, 7500)
 +
lat, lng = 40.35, 116.31        ##查询用户位置降水情况
 +
x, y = latlng2xy(lat, lng)
 +
if weight[x, y] == VALID:
 +
    result = float(data[x,y]) / NORM
 +
```
 +
 +
## 5.图示:
 +
 +
1. 中国区域降水强度图:
 +
 +
http://cdn.caiyunapp.com/weather/radar/cnmap_precp_201810250540_7bdef9f9ac.png
 +
[Image: image.png]
 +
 +
 +
 +
 +
 +
 +
 +
2.降水可用区域图:
 +
http://cdn.caiyunapp.com/weather/radar/cnweight_raw_201810250540_7bdef9f9ac.png
 +
 +
[Image: image.png]
 +
 +
 +
 +
 +
3.降水类型图:
 +
http://cdn.caiyunapp.com/weather/radar/cnmap_precptype_201810250540_7bdef9f9ac.png
 +
[Image: image.png]
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
4.NMC降水预报,降水强度图和 降水类型图,可用区域图,时次2018-10-25-12H:20M:
 +
[Image: Image.jpg]

Revision as of 03:37, 14 December 2018

  1. 中国区域降水实况栅格图 API 说明

> 北京彩彻区明科技有限公司

    1. 1.API概述 :
  • 中国区域降水实况栅格图 API 提供三种文件:降水强度图、可用区域mask图、雨雪类型mask图;
  • 文件名为格林威治时间,提供最近十帧(45分钟历史+当前最新),每5分钟更新1次(每小时12次,从00H:00M开始);
  • 等经纬度投影,栅格分辨率 (6000 * 7500) , 纬经度分辨率近似为(0.009, 0.0105),(经度分辨率0.0105非准确值);
  • 数据第1维 (3.9079N ~ 57.9079N)纬度,第2维 (71.9282E ~ 150.6026E)经度;
  • 栅格数据索引和经纬度之间的转换详见下面示例代码;
  • 提供的数据如下:
   * 1.降水强度图,数据uint8存储,除以255为彩云降水强度(等于0~1.0之间);
   * 2.降水类型图,数据uint8存储,255代表此像素为雪(固态),100代表此像素为雨(液态),0代表不可用;
   * 3.可用区域图,数据uint8存储,255代表可用(不缺测),0代表不可用。
    1. 2.API调用方式:

1. API接口:[1](http://api.caiyunapp.com/v1/radar/cndata?token=$YOUR_TOKEN)[$YOUR_TOKEN](http://api.caiyunapp.com/v1/radar/cndata?token=$YOUR_TOKEN)} 2. 调用API 获取十帧图的url:降水强度图(共10张)、降水类型图(共10张)、可用区域图(共10张) 3. 降水强度图示例:cnmap_precp_201810250540_7bdef9f9ac.png 4. 降水类型图示例:cnmap_precptype_201810250540_7bdef9f9ac.png 5. 可用区域图示例:cnweight_raw_201810250540_7bdef9f9ac.png

    1. 3.API返回示例:

``` 全国降水图API返回 ([2](http://api.caiyunapp.com/v1/radar/cndata?token=$YOUR_TOKEN)[{](http://api.caiyunapp.com/v1/radar/cndata?token=$YOUR_TOKEN)[$YOUR_TOKEN](http://api.caiyunapp.com/v1/radar/cndata?token=$YOUR_TOKEN)} 示例如下: `{`

    • status**: "ok",
    • cndata**: [
        {
         ## 降水强度图(UTC+0 格林威治时间)  
    • data_url**: "cdn.caiyunapp.com/weather/radar/
                    cnmap_precp_201810250540_7bdef9f9ac.png",
    • **## 降水类型图(UTC+0 格林威治时间)
         **data_type_url**: "cdn.caiyunapp.com/weather/radar/
                         cnmap_precptype_201810250540_7bdef9f9ac.png",
    • **## 可用区域图(UTC+0 格林威治时间)
         **weight_url**: "cdn.caiyunapp.com/weather/radar/
                      cnweight_raw_201810250540_7bdef9f9ac.png",
    • datatime**: 1540446000, # 降雨图的时间戳(UTC+0 格林威治时间)
    • lat**: [3.9079,57.9079], # 纬度范围
    • lng**: [71.9282,150.6026], # 经度范围
    • unit**: "grey scale" # 灰度单位,降雨图数据除以255为彩云降水强度;
                            #   可用范围数据中,255代表可用,0代表不可用
         },
         ...
       ]

} ```

    1. 4.参考代码:

```

    1. 根据用户经纬度,获取彩云降水*(雪)*强度**
    2. lat_interval, lng_interval = 0.009, 0.0105**

from scipy.misc import imread VALID = 255 NORM = 255 lats = [3.9079, 57.9079] lngs = [71.9282, 150.6026] lat_size, lng_size = 6000, 7500

def latlng2xy(lat, lng):

   y = int((lng - lngs[0]) / (lngs[1] - lngs[0]) * lng_size)
   x = int((lats[1] - lat) / (lats[1] - lats[0]) * lat_size)
   return x, y

data = imread('[cnmap_precp_201810250540_7bdef9f9ac.png](http://cdn.caiyunapp.com/weather/radar/cnmap_precp_201807101700_fff3451c8a.png)') weight = imread('[cnweight_raw_](cnweight_raw_201807101700_fff3451c8a.png)[201810250540_7bdef9f9ac.png](http://cdn.caiyunapp.com/weather/radar/cnmap_precp_201807101700_fff3451c8a.png)') lat_size, lng_size = data.shape ##(6000, 7500) lat, lng = 40.35, 116.31 ##查询用户位置降水情况 x, y = latlng2xy(lat, lng) if weight[x, y] == VALID:

   result = float(data[x,y]) / NORM

```

    1. 5.图示:

1. 中国区域降水强度图:

cnmap_precp_201810250540_7bdef9f9ac.png [Image: image.png]




2.降水可用区域图: cnweight_raw_201810250540_7bdef9f9ac.png

[Image: image.png]



3.降水类型图:

cnmap_precptype_201810250540_7bdef9f9ac.png [Image: image.png]






4.NMC降水预报,降水强度图和 降水类型图,可用区域图,时次2018-10-25-12H:20M: [Image: Image.jpg]