-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathera5-monthly-anomalies.json
107 lines (107 loc) · 2.37 KB
/
era5-monthly-anomalies.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
{
"process_graph": {
"load": {
"process_id": "load_collection",
"description": "Load ERA5 monthly 2m air temperature from 1979 to 2019",
"arguments": {
"id": "ECMWF/ERA5/MONTHLY",
"spatial_extent": null,
"temporal_extent": ["1979-01-01","2020-01-01"],
"bands": ["mean_2m_air_temperature"]
}
},
"convert": {
"process_id": "apply",
"description": "Convert temperature from K to degree celsius",
"arguments": {
"data": {"from_node": "load"},
"process": {
"process_graph": {
"k_to_degC": {
"process_id": "subtract",
"arguments": {
"x": {"from_parameter": "x"},
"y": 273.15
},
"result": true
}
}
}
}
},
"normals": {
"process_id": "climatological_normal",
"description": "Create the climatological period normals.",
"arguments": {
"data": {"from_node": "convert"},
"period": "month"
}
},
"anomaly": {
"process_id": "anomaly",
"description": "For each month in the time-series, calculate the anomaly",
"arguments": {
"data": {"from_node": "convert"},
"normals": {"from_node": "normals"},
"period": "month"
}
},
"reduce": {
"process_id": "reduce_dimension",
"description": "Reduce to first month - for visualization purposes only",
"arguments": {
"data": {"from_node": "anomaly"},
"reducer": {
"process_graph": {
"first": {
"process_id": "first",
"arguments": {
"data": {
"from_parameter": "data"
}
},
"result": true
}
}
},
"dimension": "t"
}
},
"stretch": {
"process_id": "apply",
"description": "Stretch range from -1 / 1 to 0 / 255 for PNG visualization.",
"arguments": {
"data": {"from_node": "reduce"},
"process": {
"process_graph": {
"linear_scale_range": {
"process_id": "linear_scale_range",
"arguments": {
"x": {
"from_parameter": "x"
},
"inputMin": -10,
"inputMax": 10,
"outputMax": 255
},
"result": true
}
}
}
}
},
"save": {
"process_id": "save_result",
"arguments": {
"data": {
"from_node": "stretch"
},
"format": "PNG",
"options": {
"palette": ["#2166AC","#4393C3","#92C5DE","#D1E5F0","#F7F7F7","#FDDBC7","#F4A582","#D6604D","#B2182B"]
}
},
"result": true
}
}
}