Gridded climate & ocean data visualization
Plot and compare NetCDF/HDF fields with correct projections and scales.
20 project-authored proposals · taxonomy v1.1 · 0 new benchmark runs. Verifiers and partial-credit rules below are designs, not executed results.
- Typical applications
- Panoply · ncview · NASA Worldview
- Class GUI-need label
G2· GUI-essential
Task proposals · 20
Expand to inspect the complete original wording and proposed checks. Original proposal text remains English in both interfaces.
R08.03.01.01-T01 Plot July sea-surface temperature on a Robinson map in Panoply with a fixed scale
Original instruction
Open input/oisst_monthly_2024.nc in Panoply. Create a lon-lat plot of 'sst' for July 2024 on the Robinson projection, scale −2 to 32 °C with the GMT_haxby colour table and continents overlay. Save plot settings to output/sst_jul.pclx and export a 1200-px-wide output/sst_jul.png.
- Platforms
mac· macOSwin· Windows- Applications
- Panoply
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
G3· GUI-only- Interaction primitives
click· Point & clicktype· Text & formsvis· Visual judgment- Work product
WP03· Visual layout- Conditions
- None declared
- Proposed difficulty
- 2 / 5
Proposed verifier
Parse sst_jul.pclx: variable sst, time index for 2024-07, projection Robinson, scale min/max −2/32, colour table GMT_haxby, overlay on. PanoplyCL re-renders the .pclx and the submitted PNG must match it (SSIM ≥0.95) and be 1200 px wide; matplotlib output without a .pclx scores 0. PanoplyCL is not installed on the agent VM, and a file-system audit log flags any .pclx, PNG or CSV in output/ not written by Panoply.
Proposed partial credit
25% correct variable and month; 25% projection; 30% scale and colour table; 20% PNG matches re-render.
R08.03.01.01-T02 Map the 2023 temperature anomaly against a 1991–2020 climatology in Panoply
Original instruction
Open input/era5_t2m_2023_mean.nc and input/era5_t2m_clim_1991_2020.nc in Panoply. Make a combined plot Array 1 − Array 2 of t2m on an equirectangular map, symmetric scale ±4 K with a diverging colour table. Save output/anom.pclx, export output/anom.png and export the plotted difference array to output/anom.csv.
- Platforms
mac· macOSwin· Windows- Applications
- Panoply
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
click· Point & clicktype· Text & formsvis· Visual judgment- Work product
WP03· Visual layout- Conditions
- None declared
- Proposed difficulty
- 3 / 5
Proposed verifier
anom.pclx must define a two-array combined plot with subtraction in the stated order, scale −4/+4 and a diverging table. anom.csv values must match the reference difference (max abs error 1e-3 K) on the same grid. PNG must match the PanoplyCL re-render (SSIM ≥0.95). PanoplyCL is not installed on the agent VM, and a file-system audit log flags any .pclx, PNG or CSV in output/ not written by Panoply.
Proposed partial credit
30% combine set up in correct order; 20% scale/colour table; 35% exported difference data correct; 15% PNG.
R08.03.01.01-T03 Find the warmest equatorial Pacific grid cell at 100 m depth using ncview
Original instruction
In a Linux desktop, open input/woa_temp.nc with ncview. Show 't_an' at depth level 100 m for month 5 and, using the cursor readout, find the grid cell with the highest temperature within 120°E–80°W, 20°S–20°N. Write its lon, lat and value to output/answer.json.
- Platforms
lin· Linux- Applications
- ncview
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clicknav· Pan/zoom/scrollvis· Visual judgment- Work product
WP12· Answer/decision- Conditions
- None declared
- Proposed difficulty
- 3 / 5
Proposed verifier
lon/lat must be within one grid cell (1°) of the gold argmax and value within 0.01 °C of that cell. Python netCDF libraries, ncdump and NCO/CDO are not installed in the image; shell history is logged and command-line extraction caps the score at 0.
Proposed partial credit
30% correct depth level and month displayed; 50% location within one cell; 20% value correct.
R08.03.01.01-T04 Build a NASA Worldview fire-season view and save its share link
Original instruction
In NASA Worldview, show MODIS Terra Corrected Reflectance (True Color), VIIRS NOAA-20 Fires and Thermal Anomalies, and the Coastlines layer for 2025-08-12, framed on 123°W–119°W, 38°N–41°N. Hide all other overlays and paste the share permalink into output/permalink.txt.
- Platforms
web· Any OS (web)- Applications
- NASA Worldview
- Interfaces
brow· Browser- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
click· Point & clicknav· Pan/zoom/scrolldrag· Drag & drop- Work product
WP08· App/system state- Conditions
- None declared
- Proposed difficulty
- 2 / 5
Proposed verifier
Parse the permalink: l= contains exactly the three required layer IDs (plus the base layer), t= 2025-08-12, v= bounding box within 5% of the target extent on each side. The URL must match one produced by Worldview's Share dialog, captured from the browser session; hand-built URLs are detected and score 0. Worldview loads the link and screenshots it for the record.
Proposed partial credit
40% correct layers; 25% date; 35% extent within tolerance.
R08.03.01.01-T05 Make an equatorial Hovmöller diagram of SST anomaly for the 2015 El Niño in Panoply
Original instruction
Open input/sst_anom_1980_2024.nc in Panoply and create a longitude–time plot of sst_anom along the equator (0°) for Jan 2014–Dec 2017 and 120°E–80°W, scale ±3 °C with a diverging table. Save output/hov.pclx and output/hov.png, and report in output/answer.json the month with the largest anomaly at 120°W.
- Platforms
mac· macOSwin· Windows- Applications
- Panoply
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
click· Point & clicktype· Text & formsvis· Visual judgment- Work product
WP03· Visual layout- Conditions
- None declared
- Proposed difficulty
- 3 / 5
Proposed verifier
hov.pclx must specify a lon–time plot at latitude 0°, the time and longitude ranges, and ±3 scale. The month must equal the gold argmax at 120°W. PNG must match the PanoplyCL re-render (SSIM ≥0.95). PanoplyCL is not installed on the agent VM, and a file-system audit log flags any .pclx, PNG or CSV in output/ not written by Panoply.
Proposed partial credit
30% plot type and latitude; 25% ranges; 20% scale; 25% correct peak month.
R08.03.01.01-T06 Plot an Atlantic meridional temperature section with depth increasing downward
Original instruction
Open input/woa23_temp_annual.nc in Panoply and create a latitude–depth section of t_an at 30°W, 60°S–60°N, 0–2000 m with the surface at the top, scale 0–25 °C in 25 steps. Save output/section.pclx and output/section.png and export the plotted slice to output/section.csv.
- Platforms
mac· macOSwin· Windows- Applications
- Panoply
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
click· Point & clicktype· Text & formsvis· Visual judgment- Work product
WP03· Visual layout- Conditions
- None declared
- Proposed difficulty
- 3 / 5
Proposed verifier
section.pclx: lat–vertical plot at the 30°W index, latitude and depth ranges, inverted depth axis, scale 0–25 with 25 steps. section.csv must match the reference slice (max abs error 1e-3). PNG matched against PanoplyCL re-render. PanoplyCL is not installed on the agent VM, and a file-system audit log flags any .pclx, PNG or CSV in output/ not written by Panoply.
Proposed partial credit
30% correct longitude and plot type; 25% axis ranges and inversion; 20% scale; 25% exported slice.
R08.03.01.01-T07 Extract and reproject an ERA5 temperature time slice to polar stereographic in QGIS
Original instruction
Load input/era5_t2m_jan2024.nc (hourly) in QGIS. Select the band for 2024-01-15 12:00 UTC, convert K to °C, reproject to EPSG:3031 and clip south of 60°S. Style it singleband pseudocolor with fixed classes −40 to 0 °C every 5 °C. Save output/antarctica.tif and the project output/map.qgz.
- Platforms
mac· macOSwin· Windows- Applications
- QGIS
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clicktype· Text & formsvis· Visual judgment- Work product
WP04· 3D/spatial model- Conditions
- None declared
- Proposed difficulty
- 3 / 5
Proposed verifier
antarctica.tif: CRS EPSG:3031, extent covers 60–90°S only, values match the reference (MAE <0.05 °C) — choosing the wrong band fails. map.qgz renderer: pseudocolor, 9 fixed class breaks −40…0. The PyQGIS console, qgis_process and GDAL command-line tools are disabled, and map.qgz must reference antarctica.tif as its layer source.
Proposed partial credit
30% correct time band; 20% unit conversion; 25% reprojection and clip; 25% styling.
R08.03.01.01-T08 Spot the model run with a dateline seam artifact among four SST outputs
Original instruction
input/ holds run_A.nc to run_D.nc, four regridded model SST fields. Plot each in Panoply on a Pacific-centred map, find the one with a spurious seam or duplicated column near 180°, and write the run name and the affected longitude index range to output/answer.json.
- Platforms
mac· macOSwin· Windows- Applications
- Panoply
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
click· Point & clickvis· Visual judgmentnav· Pan/zoom/scroll- Work product
WP12· Answer/decision- Conditions
- None declared
- Proposed difficulty
- 3 / 5
Proposed verifier
Run name must equal gold; reported index range must overlap the gold artifact columns with IoU ≥0.5. The other three runs contain plausible natural fronts near the dateline to defeat naive difference checks. Python netCDF libraries, ncdump, NCO/CDO and PanoplyCL are not installed on the VM and shell history is logged, so runs must be inspected in Panoply.
Proposed partial credit
60% correct run; 40% artifact index range.
R08.03.01.01-T09 Visualize Gulf Stream surface currents with glyphs and streamlines in ParaView
Original instruction
Open input/hycom_gulfstream.nc in ParaView. Compute speed = sqrt(u²+v²) with a Calculator, colour by speed 0–2 m/s, add Glyph arrows on every 4th point and a Stream Tracer seeded along a line from (75°W, 33°N) to (70°W, 33°N). Export a 1920×1080 output/gulf.png, save output/gulf.pvsm, and report max speed in output/answer.json.
- Platforms
mac· macOSwin· Windows- Applications
- ParaView
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clicktype· Text & formsvis· Visual judgment- Work product
WP03· Visual layout- Conditions
- None declared
- Proposed difficulty
- 4 / 5
Proposed verifier
Parse gulf.pvsm: Calculator expression for speed, LUT range 0–2, Glyph stride 4, StreamTracer line seed endpoints within 0.1° of spec. Max speed within 1% of reference. PNG 1920×1080. The Python Shell is disabled and pvpython/pvbatch runs are flagged.
Proposed partial credit
25% speed field; 20% glyphs; 30% streamline seeding; 25% render and max speed.
R08.03.01.01-T10 Create a ten-day aerosol optical depth animation GIF in NASA Worldview
Original instruction
In NASA Worldview show the MODIS combined Value-Added Aerosol Optical Depth layer over 120°W–60°W, 45°N–65°N. Using the animation tool, create a GIF for 2025-06-01 to 2025-06-10 daily at 2 frames/s with date stamps, and save it as output/aod.gif.
- Platforms
web· Any OS (web)- Applications
- NASA Worldview
- Interfaces
brow· Browser- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
click· Point & clicknav· Pan/zoom/scrolldrag· Drag & drop- Work product
WP05· Time-based media- Conditions
- None declared
- Proposed difficulty
- 3 / 5
Proposed verifier
aod.gif must have 10 frames with 500 ms delay, Worldview date stamps matching consecutive dates, and frame content matching the reference GIBS tiles for that layer and extent (per-frame SSIM ≥0.85). Direct GIBS tile requests are blocked at the proxy. Frames must carry the Worldview animation date-stamp overlay.
Proposed partial credit
25% correct layer; 25% extent; 30% 10 consecutive dated frames; 20% frame rate.
R08.03.01.01-T11 Plot curvilinear ROMS salinity on its true geographic grid in Panoply
Original instruction
Open input/roms_his.nc (curvilinear grid with 2-D lon_rho/lat_rho) in Panoply. Plot surface salt (top s_rho level) at time index 3 using the 2-D geolocation, zoomed to 76°W–68°W, 34°N–42°N, scale 30–36 PSU. Save output/roms.pclx and output/roms.png.
- Platforms
mac· macOSwin· Windows- Applications
- Panoply
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
click· Point & clicktype· Text & formsvis· Visual judgment- Work product
WP03· Visual layout- Conditions
- None declared
- Proposed difficulty
- 4 / 5
Proposed verifier
roms.pclx must reference salt with lon_rho/lat_rho as the geogrid (not index space), top s_rho level, time 3, the map bounds and scale. PNG must match the PanoplyCL re-render (SSIM ≥0.95); an index-space plot fails the geogrid milestone. PanoplyCL is not installed on the agent VM, and a file-system audit log flags any .pclx, PNG or CSV in output/ not written by Panoply.
Proposed partial credit
35% curvilinear geolocation used; 25% level/time; 20% region; 20% scale and image.
R08.03.01.01-T12 Compare JJA climatologies of two CMIP6 models on a common grid with CDO and Panoply
Original instruction
input/ has monthly tas for model A (1.25°) and model B (2.5°), 1995–2014. With CDO compute each model's JJA climatology, remap A to B's grid bilinearly, and write A−B to output/jja_diff.nc. Plot it in Panoply on Robinson with ±5 K diverging scale and save output/jja_diff.pclx and output/jja_diff.png.
- Platforms
mac· macOSlin· Linux- Applications
- CDO · Panoply
- Interfaces
term· Terminaldesk· Desktop GUI- GUI need · task setting
HY· Hybrid- GUI need · ordinary access
HY· Hybrid- Interaction primitives
code· Code & commandsclick· Point & clickvis· Visual judgment- Work product
WP03· Visual layout- Conditions
multiapp· Multi-app- Proposed difficulty
- 5 / 5
Proposed verifier
jja_diff.nc must match the reference on B's grid (RMSE <0.01 K); using DJF or annual means, or remapping B to A, fails. The .pclx must plot that file with Robinson and ±5 scale; PNG matched to PanoplyCL re-render (SSIM ≥0.95).
Proposed partial credit
30% JJA climatologies; 25% regridding; 20% difference file; 25% Panoply plot.
R08.03.01.01-T13 Find the peak month of the 2015–16 El Niño at one grid point by scrubbing time in ncview
Original instruction
Open input/sst_anom_monthly.nc in ncview on Linux. Step through time to find the month in 2015–2016 when the SST anomaly at 0°N, 150°W was highest, and report that month (YYYY-MM) and value in output/answer.json.
- Platforms
lin· Linux- Applications
- ncview
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clicknav· Pan/zoom/scrollav· Audio/video over time- Work product
WP12· Answer/decision- Conditions
- None declared
- Proposed difficulty
- 3 / 5
Proposed verifier
Month must be within ±1 of the gold argmax at the nearest grid cell; value within 0.05 °C of that month's value. Python netCDF libraries, ncdump and NCO/CDO are not installed; shell history is logged and command-line extraction scores 0, so values must be read in ncview.
Proposed partial credit
70% month within ±1 (full if exact); 30% value correct.
R08.03.01.01-T14 Build a 3D humidity isosurface with 500 hPa winds and heights in Unidata IDV
Original instruction
Open input/gfs_2025091200.grib2 in IDV. Create a 3D isosurface of relative humidity at 90% for 700–300 hPa, 500 hPa wind barbs on a 2° skip, and 500 hPa geopotential height contours every 60 m, viewed from the south-west (azimuth 225°, tilt 45°) framing 20–60°N, 130–60°W. Save the bundle as output/storm.xidv and an image output/storm.png.
- Platforms
mac· macOSwin· Windows- Applications
- Unidata IDV
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clickdrag· Drag & dropvis· Visual judgment- Work product
WP03· Visual layout- Conditions
tutorial· Follow docs/tutorial- Proposed difficulty
- 5 / 5
Proposed verifier
Parse storm.xidv: an isosurface display of RH at 90 with vertical range 700–300 hPa, a barb display at 500 hPa with skip set, and a contour display of 500 hPa height interval 60. The bundle view must be within 10° of the stated azimuth/tilt and storm.png reach SSIM ≥0.7 against the reference render at that view. IDV's Jython shell and ISL batch mode are disabled; a file-system audit flags files not written by IDV.
Proposed partial credit
30% isosurface; 25% wind barbs; 25% height contours; 20% bundle and 3D view.
R08.03.01.01-T15 Apply a custom colour table and stepped levels to a precipitation map in Panoply
Original instruction
Open input/imerg_precip_2024_jan.nc in Panoply. Import the colour table input/precip.cpt, plot precipitation with 12 discrete steps from 0 to 12 mm/day, set distinct colours for out-of-range values, add the coastline overlay, and save output/precip.pclx and output/precip.png.
- Platforms
mac· macOSwin· Windows- Applications
- Panoply
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
G3· GUI-only- Interaction primitives
click· Point & clicktype· Text & formsvis· Visual judgment- Work product
WP03· Visual layout- Conditions
- None declared
- Proposed difficulty
- 3 / 5
Proposed verifier
precip.pclx must reference the imported precip.cpt, range 0–12 with 12 steps, out-of-range colours set, coastline overlay on. PNG must match the PanoplyCL re-render (SSIM ≥0.95). PanoplyCL is not installed on the agent VM, and a file-system audit log flags any .pclx, PNG or CSV in output/ not written by Panoply.
Proposed partial credit
30% custom colour table; 30% stepped range; 20% out-of-range colours; 20% overlay and image.
R08.03.01.01-T16 Animate monthly Arctic sea-ice concentration with QGIS's temporal controller
Original instruction
Load input/seaice_conc_2024.nc into QGIS as a mesh layer, set dataset group 'ice_conc' with a 0–100% blues ramp, show it in EPSG:3413, and use the Temporal Controller to export one frame per month for 2024 to output/frames/ at 1000×1000 px. Save the project as output/ice.qgz.
- Platforms
mac· macOSwin· Windows- Applications
- QGIS
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clicktype· Text & formsnav· Pan/zoom/scroll- Work product
WP05· Time-based media- Conditions
- None declared
- Proposed difficulty
- 4 / 5
Proposed verifier
output/frames/ must hold 12 PNGs in month order at 1000×1000; each frame's ice area (blue pixels above 15%) must correlate ≥0.95 with reference monthly extents. ice.qgz: mesh layer, renderer range 0–100, CRS EPSG:3413, temporal step 1 month. The PyQGIS console and qgis_process are disabled; frames must follow the Temporal Controller export naming.
Proposed partial credit
25% mesh layer and styling; 20% CRS; 35% 12 correct frames; 20% project saved.
R08.03.01.01-T17 Diagnose a wrong missing_value attribute, fix it with NCO and replot in Panoply
Original instruction
Plots of input/argo_grid.nc in Panoply show large blotches of extreme values. Find the cause by inspecting the variable attributes in Panoply, fix the file with NCO into output/argo_fixed.nc without altering valid data, and re-plot temperature at 10 dbar in Panoply. Save output/argo.pclx, output/argo.png and a one-line cause in output/cause.txt.
- Platforms
mac· macOSlin· Linux- Applications
- Panoply · NCO
- Interfaces
desk· Desktop GUIterm· Terminal- GUI need · task setting
HY· Hybrid- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
click· Point & clickcode· Code & commandsvis· Visual judgment- Work product
WP03· Visual layout- Conditions
multiapp· Multi-app- Proposed difficulty
- 4 / 5
Proposed verifier
argo_fixed.nc: _FillValue/missing_value set to the true sentinel, all non-fill values identical to the input. argo.png must have <0.1% pixels in the extreme colour class. cause.txt must mention the mismatched fill value (keyword check).
Proposed partial credit
30% cause identified; 35% file fixed without data changes; 35% correct replot.
R08.03.01.01-T18 Control: locate the warmest equatorial Pacific cell at 100 m with xarray
Original instruction
Control pair of T03. Using Python/xarray or CDO from the terminal, find the grid cell with the highest t_an at depth 100 m, month 5, within 120°E–80°W, 20°S–20°N in input/woa_temp.nc, and write lon, lat and value to output/answer.json.
- Platforms
mac· macOSlin· Linux- Applications
- xarray · CDO
- Interfaces
term· Terminal- GUI need · task setting
CL· CLI-sufficient- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
code· Code & commands- Work product
WP12· Answer/decision- Conditions
- None declared
- Proposed difficulty
- 2 / 5
Proposed verifier
Same checker as T03 (location within one grid cell, value within 0.01 °C). Scored as the CLI control of T03; the dateline-crossing box is the main trap.
Proposed partial credit
50% location; 30% value; 20% correct depth and month.
R08.03.01.01-T19 Pull an area-averaged IMERG precipitation series from Giovanni and correlate with a station
Original instruction
Using an Earthdata test account in NASA Giovanni, generate an area-averaged monthly time series of GPM IMERG precipitation for 100°E–102°E, 13°N–15°N, Jan 2015–Dec 2024, and download it as CSV to output/imerg.csv. Compute the Pearson correlation with input/station_monthly.csv after unit harmonisation and write r to output/answer.json.
- Platforms
web· Any OS (web)- Applications
- NASA Giovanni · Python
- Interfaces
brow· Browserterm· Terminal- GUI need · task setting
HY· Hybrid- GUI need · ordinary access
G2· GUI-essential- Interaction primitives
click· Point & clicktype· Text & formscode· Code & commands- Work product
WP12· Answer/decision- Conditions
multiapp· Multi-app- Proposed difficulty
- 4 / 5
Proposed verifier
imerg.csv must carry Giovanni's header with the requested box, product and dates and 120 monthly values matching the reference download (max abs error 1e-3). r within 0.01 of gold (mm/hr vs mm/month mismatch gives a wrong scale but same r, so the CSV units are also checked).
Proposed partial credit
40% correct Giovanni series; 20% units harmonised; 40% correlation correct.
R08.03.01.01-T20 Compose a linked four-season SST anomaly panel figure in ParaView
Original instruction
Open input/sst_season_anom.nc in ParaView and build a 2×2 layout of DJF, MAM, JJA and SON anomaly maps with linked cameras, one shared colour map fixed at ±2 °C (Cool to Warm), a title per view and a single colour legend. Save output/seasons.pvsm and export a 2400×1600 output/seasons.png.
- Platforms
mac· macOSwin· Windows- Applications
- ParaView
- Interfaces
desk· Desktop GUI- GUI need · task setting
G2· GUI-essential- GUI need · ordinary access
CL· CLI-sufficient- Interaction primitives
click· Point & clickdrag· Drag & dropvis· Visual judgment- Work product
WP03· Visual layout- Conditions
- None declared
- Proposed difficulty
- 5 / 5
Proposed verifier
Parse seasons.pvsm: four render views in a 2×2 layout, each showing the correct season slice, a shared LUT −2/+2, camera links between views, four title texts, exactly one visible scalar bar. PNG 2400×1600 with per-quadrant SSIM ≥0.85 vs reference. Python Shell disabled and pvpython/pvbatch runs flagged.
Proposed partial credit
25% four correct season views; 20% shared fixed colour map; 20% linked cameras; 35% titles, legend and exported image.
Mapped research references
Existing benchmark-to-class links from the research catalog. They are not record-level annotations, executions or product endorsements.