只要是符合规范的 MICAPS 第 4 类文件,就可以上图。不限于库内已给默认色标的平均温度、降水、冰雹概率、相对湿度、风速、海平面气压、露点、最高气温、最低气温、3小时变压、24小时变压和24小时变温。工厂仍是 createFieldLayer,format: 'micaps4'。本页要素同样能绘制、裁剪。
参数
与 地面分析 同一套字段。没有内置色标,必须写 pieces。
| 参数 | 必选 | 用途 | 默认 |
|---|---|---|---|
data | 必选 | 解析出口的 values | — |
product | 必选 | 画哪一列,与 parse 的 product 相同,例如 vis | — |
pieces | 必选 | 分档色标,至少两档 | — |
range | 可选 | 过滤可见数值 | 全开 |
fill | 可选 | cells / isobands / gradient | cells |
convert | 可选 | 绘制换算。按换算后的单位写 pieces | 不换算 |
| 显示与交互 | 可选 | 见 图层 | — |
文件
头为文本 diamond 4。原件常见 .001 / .000 / .txt,也可传 .gz / .bz2 / .zip / .tgz。一份文件里可以有多个要素,一次 parse 只出你指定的那一列。
ts
const parsed = await parse(buffer, {
format: 'micaps4',
// 一次只出这一列
product: 'vis'
})product 是记录列名,字母开头,例如 vis。已有默认色标的列见 地面分析。
数据
文件规则见 地面分析。本列名与 parse 的 product 相同,对文件说明里的要素。缺测写 9999。
调用
没有内置色标,必须写 product 和 pieces。
ts
const layer = createFieldLayer({
// 解析出口
data: parsed.values,
// 画哪一列,与 parse 相同
product: 'vis',
// 自行绘制必须给分档
pieces: [
{ value: 0, color: 'rgb(200, 220, 255)', label: '0~50' },
{ value: 50, color: 'rgb(40, 120, 200)', label: '50~80' },
{ value: 80, color: 'rgb(10, 40, 120)', label: '≥80' }
],
// 等值面填色
fill: 'isobands'
})
layer.addTo(globe)当前场四至:layer.getBounds()。库不飞入,套合由地球宿主相机做。见 图层。
上传验证里选「自定义」,填写要素 key 和分档后再上传,即可对照着图看。
色标
由你给出。pieces 至少两档,value 为区间下沿(到下一档之前用此色),label 只作文案,可写成 '0~50'。低于第一档或缺测透明。写法见 图例。
能力
绘制 cells / isobands / gradient 互斥。
ts
layer.setFill('cells')
layer.setFill('isobands')
layer.setFill('gradient')数据裁剪 setClipPath 按省界贴边。clipField 只给导出 / 统计。