Note
Go to the end to download the full example code.
Vertical profile plot¶
Generate vertical profile of region-averaged field.
References
General functionality is provided using CSET recipe generic_level_domain_mean_vertical_profile_series.yaml
The following CSET operators are used:
Using cset bake on the command line¶
Access recipe file using
cset cookbook.Set required recipe inputs on command line.
Example to generate vertical profile plot of domain averaged air_temperature on pressure levels for any number of input models:
cset cookbook generic_level_domain_mean_vertical_profile_series.yaml
cset -v bake -i "/path/to/input/data1" "..." "/path/to/input/dataN" \
-o "./output_path" \
-r generic_level_domain_mean_vertical_profile_series.yaml \
--VARNAME="air_temperature" \
--MODEL_NAME="['my_model_label1', '...', 'my_model_labelN']" \
--LEVELTYPE="pressure" \
--METHOD="SEQ" \
--SUBAREA_TYPE='None' --SUBAREA_EXTENT='None' --SUBAREA_NAME=''
Configuring the cset_workflow¶
Update workflow configuration settings via
rose editGUI or inrose-suite.conffile.Complete
General setup optionsandCycling and Model optionsdetails - see Configure the workflow.To plot vertical profile of fields defined on pressure levels, set required configuration options on
Diagnostics / Pressure level fieldspanel:PRESSURE_LEVEL_FIELDS = ["air_temperature", ...] PRESSURE_LEVELS = ['1000', '850', '500', ...] PROFILE_PLEVEL = True
To plot vertical profile of fields defined on model levels, set required configuration options on
Diagnostics / Model level fieldspanel:MODEL_LEVEL_FIELDS = ["air_temperature", ...] MODEL_LEVELS = [1, 2, 3, ...] PROFILE_MLEVEL = True
Example python code¶
![air_temperature [2021-04-10 21:00:00]](../../../../_images/sphx_glr_plot_line_vertical_001.png)
from CSET import sample_data_path
from CSET.operators import collapse, plot, read
# Set paths to input data
filename1 = sample_data_path("profile_air_temperature_1.nc")
filename2 = sample_data_path("profile_air_temperature_2.nc")
# Read selected variable(s) of interest for 2 models
cubes = read.read_cubes(
[filename1, filename2],
["air_temperature"],
model_names=["model_fcst_1", "model_fcst_2"],
)
# Collapse input data over selected dimensions
collapsed_cubes = collapse.collapse(
cubes, ["grid_longitude", "grid_latitude", "time"], "MEAN"
)
# Plot domain mean profile using plot_vertical_line_series
plot.plot_vertical_line_series(collapsed_cubes, series_coordinate="pressure")
Total running time of the script: (0 minutes 0.299 seconds)