Skip to content

Commit edfda58

Browse files
authored
Conda test (FlexTRKR#108)
* Updates for compliance. 1. Updated use of np.nan in compliance with NumPy 2.0. 2. Updated quicklook plot codes to use default font.family and fixed a small bug to work with current version of Xarray. 3. Updated demo shell scripts commenting out activating pyflextrkr environments. * Updated README.md with conda install instructions. * Updated CI test to use get_basetime_from_string
1 parent c8252bb commit edfda58

40 files changed

Lines changed: 813 additions & 129 deletions

.github/workflows/test.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ jobs:
2929
run: |
3030
python -m pip install --upgrade pip
3131
pip install -r requirements.txt
32+
pip install -e .
3233
pip install pytest
3334
3435
- name: Run Tests

Analysis/plot_subset_cell_tracks_ETH_demo.py

Lines changed: 661 additions & 0 deletions
Large diffs are not rendered by default.

Analysis/plot_subset_cell_tracks_demo.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@ def plot_map(pixel_dict, plot_info, map_info, track_dict):
297297

298298
# Set up figure
299299
mpl.rcParams['font.size'] = fontsize
300-
mpl.rcParams['font.family'] = 'Helvetica'
300+
# mpl.rcParams['font.family'] = 'Helvetica'
301301
fig = plt.figure(figsize=figsize, dpi=300, facecolor='w')
302302
gs = gridspec.GridSpec(1,2, height_ratios=[1], width_ratios=[1,0.03])
303303
gs.update(wspace=0.05, hspace=0.05, left=0.1, right=0.9, top=0.92, bottom=0.08)

Analysis/plot_subset_generic_tracks_demo.py

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -250,7 +250,7 @@ def plot_map(pixel_dict, plot_info, map_info, track_dict):
250250

251251
# Set up figure
252252
mpl.rcParams['font.size'] = fontsize
253-
mpl.rcParams['font.family'] = 'Helvetica'
253+
# mpl.rcParams['font.family'] = 'Helvetica'
254254
fig = plt.figure(figsize=figsize, dpi=200)
255255
gs = gridspec.GridSpec(1,2, height_ratios=[1], width_ratios=[1,0.03])
256256
gs.update(wspace=0.05, hspace=0.05, left=0.1, right=0.9, top=0.92, bottom=0.08)
@@ -374,13 +374,13 @@ def work_for_time_loop(datafile, track_dict, map_info, plot_info, config):
374374
map_info['subset'] = subset
375375

376376
# Make dilation structure (larger values make thicker outlines)
377-
# perim_thick = 1
378-
# dilationstructure = np.zeros((perim_thick+1,perim_thick+1), dtype=int)
379-
# dilationstructure[1:perim_thick, 1:perim_thick] = 1
380-
# dilationstructure = generate_binary_structure(2,1)
381377
perim_width = plot_info['perim_width']
382-
dilationstructure = np.zeros((perim_width+1,perim_width+1), dtype=int)
383-
dilationstructure[1:perim_width, 1:perim_width] = 1
378+
if perim_width > 1:
379+
dilationstructure = np.zeros((perim_width+1,perim_width+1), dtype=int)
380+
dilationstructure[1:perim_width, 1:perim_width] = 1
381+
else:
382+
dilationstructure = generate_binary_structure(2,1)
383+
# import pdb; pdb.set_trace()
384384

385385
# Data variable names
386386
field_varname = config["field_varname"]
@@ -483,25 +483,26 @@ def work_for_time_loop(datafile, track_dict, map_info, plot_info, config):
483483
figsize = [10, 10]
484484

485485
# Specify plotting info
486-
# cmap = 'RdBu_r', # colormap
487-
# levels = np.arange(-4, 4.01, 0.2), # shading levels
488-
# cbticks = np.arange(-4, 4.01, 1), # colorbar ticks
489-
# cblabels = 'Z500 Anomaly (m$^{2}$ s$^{-1}$)', # colorbar label
490-
cmap = 'gist_ncar' # colormap
491-
levels = np.arange(0, 70.01, 5) # shading levels
492-
cbticks = np.arange(0, 70.01, 10) # colorbar ticks
493-
cblabels = 'Reflectivity (dBZ)' # colorbar label
486+
cmap = 'RdBu_r' # colormap
487+
levels = np.arange(-4, 4.01, 0.2) # shading levels
488+
cbticks = np.arange(-4, 4.01, 1) # colorbar ticks
489+
cblabels = 'Z500 Anomaly (m$^{2}$ s$^{-1}$)' # colorbar label
490+
# cmap = 'gist_ncar' # colormap
491+
# levels = np.arange(0, 70.01, 5) # shading levels
492+
# cbticks = np.arange(0, 70.01, 10) # colorbar ticks
493+
# cblabels = 'Reflectivity (dBZ)' # colorbar label
494494
plot_info = {
495495
'fontsize': 13, # plot font size
496496
'cmap': cmap,
497497
'levels': levels,
498498
'cbticks': cbticks,
499499
'cblabels': cblabels,
500-
'remove_oob_low': True, # mask out-of-bounds low values (< min(levels))
500+
'remove_oob_low': False, # mask out-of-bounds low values (< min(levels))
501501
'remove_oob_high': False, # mask out-of-bounds high values (> max(levels))
502502
'marker_size': 10, # track symbol marker size
503503
'tracknumber_fontsize': 10,
504-
'perim_width': 6, # width of the track feature perimeter (number of pixels)
504+
# 'perim_width': 6, # width of the track feature perimeter (number of pixels)
505+
'perim_width': 1, # width of the track feature perimeter (number of pixels)
505506
'trackpath_linewidth': 1.5, # track path line width
506507
'trackpath_color': 'blueviolet', # track path color
507508
'map_edgecolor': 'gray', # background map edge color
@@ -521,7 +522,7 @@ def work_for_time_loop(datafile, track_dict, map_info, plot_info, config):
521522
'lonv': lonv,
522523
'latv': latv,
523524
'draw_border': True,
524-
'draw_state': True,
525+
'draw_state': False,
525526
}
526527

527528
# Track stats file

Analysis/plot_subset_psi_tracks_demo.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@ def plot_map(pixel_dict, plot_info, map_info, track_dict):
235235

236236
# Set up figure
237237
mpl.rcParams['font.size'] = fontsize
238-
mpl.rcParams['font.family'] = 'Helvetica'
238+
# mpl.rcParams['font.family'] = 'Helvetica'
239239
fig = plt.figure(figsize=figsize, dpi=200)
240240
gs = gridspec.GridSpec(1,2, height_ratios=[1], width_ratios=[1,0.03])
241241
gs.update(wspace=0.05, hspace=0.05, left=0.1, right=0.9, top=0.92, bottom=0.08)

Analysis/plot_subset_tb_mcs_tracks_demo.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,7 @@ def plot_map_2panels(pixel_dict, plot_info, map_info, track_dict):
232232

233233
# Set up figure
234234
mpl.rcParams['font.size'] = fontsize
235-
mpl.rcParams['font.family'] = 'Helvetica'
235+
# mpl.rcParams['font.family'] = 'Helvetica'
236236
fig = plt.figure(figsize=figsize, dpi=300, facecolor='w')
237237
gs = gridspec.GridSpec(1, 2, height_ratios=[1], width_ratios=[1, 0.03])
238238
gs.update(wspace=0.05, hspace=0.05, left=0.1, right=0.9, top=0.92, bottom=0.08)
@@ -386,7 +386,7 @@ def work_for_time_loop(datafile, track_dict, map_info, plot_info, config):
386386
if (np.nanmax(tn) > 0):
387387

388388
# Tracknumber color levels for MCS masks (limit to 256 to fit in a colormap)
389-
tracknumbers = track_dict['lifetime'].tracks
389+
tracknumbers = track_dict['lifetime'].tracks.values
390390
tn_nlev = np.min([len(tracknumbers), 256])
391391
tn_levels = np.linspace(np.min(tracknumbers)+1, np.max(tracknumbers)+1, tn_nlev)
392392
# Add to plot_info dictionary

Analysis/plot_subset_tbpf_mcs_tracks_1panel_demo.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ def plot_map_2panels(pixel_dict, plot_info, map_info, track_dict):
274274

275275
# Set up figure
276276
mpl.rcParams['font.size'] = fontsize
277-
mpl.rcParams['font.family'] = 'Helvetica'
277+
# mpl.rcParams['font.family'] = 'Helvetica'
278278
fig = plt.figure(figsize=figsize, dpi=dpi, facecolor='w')
279279

280280
# Set GridSpec for left (plot) and right (colorbars)
@@ -455,7 +455,7 @@ def work_for_time_loop(datafile, track_dict, map_info, plot_info, config):
455455
if (np.nanmax(tn) > 0):
456456

457457
# Tracknumber color levels for MCS masks (limit to 256 to fit in a colormap)
458-
tracknumbers = track_dict['lifetime'].tracks
458+
tracknumbers = track_dict['lifetime'].tracks.values
459459
tn_nlev = np.min([len(tracknumbers), 256])
460460
tn_levels = np.linspace(np.min(tracknumbers)+1, np.max(tracknumbers)+1, tn_nlev)
461461
# Add to plot_info dictionary

Analysis/plot_subset_tbpf_mcs_tracks_demo.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -278,7 +278,7 @@ def plot_map_2panels(pixel_dict, plot_info, map_info, track_dict):
278278

279279
# Set up figure
280280
mpl.rcParams['font.size'] = fontsize
281-
mpl.rcParams['font.family'] = 'Helvetica'
281+
# mpl.rcParams['font.family'] = 'Helvetica'
282282
fig = plt.figure(figsize=figsize, dpi=dpi, facecolor='w')
283283
# vertical: left + right panel
284284
if panel_orientation == 'vertical':
@@ -513,7 +513,7 @@ def work_for_time_loop(datafile, track_dict, map_info, plot_info, config, ifile)
513513
if (np.nanmax(tn) > 0):
514514

515515
# Tracknumber color levels for MCS masks (limit to 256 to fit in a colormap)
516-
tracknumbers = track_dict['lifetime'].tracks
516+
tracknumbers = track_dict['lifetime'].tracks.values
517517
tn_nlev = np.min([len(tracknumbers), 256])
518518
tn_levels = np.linspace(np.min(tracknumbers)+1, np.max(tracknumbers)+1, tn_nlev)
519519
# Add to plot_info dictionary

Analysis/plot_subset_tbze_mcs_tracks_1panel_demo.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -255,7 +255,7 @@ def plot_map_1panel(pixel_dict, plot_info, map_info, track_dict):
255255

256256
# Set up figure
257257
mpl.rcParams['font.size'] = fontsize
258-
mpl.rcParams['font.family'] = 'Helvetica'
258+
# mpl.rcParams['font.family'] = 'Helvetica'
259259
fig = plt.figure(figsize=figsize, dpi=300, facecolor='w')
260260
# gs = gridspec.GridSpec(1, 3, height_ratios=[1], width_ratios=[1, 0.03, 0.03])
261261
# gs.update(wspace=0.2, hspace=0.05, left=0.05, right=0.95, top=0.92, bottom=0.08)
@@ -438,7 +438,7 @@ def work_for_time_loop(datafile, track_dict, map_info, plot_info, config):
438438
# if (np.nanmax(tn) > 0):
439439

440440
# Tracknumber color levels for MCS masks (limit to 256 to fit in a colormap)
441-
tracknumbers = track_dict['lifetime'].tracks
441+
tracknumbers = track_dict['lifetime'].tracks.values
442442
tn_nlev = np.min([len(tracknumbers), 256])
443443
tn_levels = np.linspace(np.min(tracknumbers)+1, np.max(tracknumbers)+1, tn_nlev)
444444
# Add to plot_info dictionary

Analysis/plot_subset_tbze_mcs_tracks_demo.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -254,7 +254,7 @@ def plot_map_2panels(pixel_dict, plot_info, map_info, track_dict):
254254

255255
# Set up figure
256256
mpl.rcParams['font.size'] = fontsize
257-
mpl.rcParams['font.family'] = 'Helvetica'
257+
# mpl.rcParams['font.family'] = 'Helvetica'
258258
fig = plt.figure(figsize=figsize, dpi=300, facecolor='w')
259259
# vertical: left + right panel
260260
if panel_orientation == 'vertical':
@@ -486,7 +486,7 @@ def work_for_time_loop(datafile, track_dict, map_info, plot_info, config):
486486
# if (np.nanmax(tn) > 0):
487487

488488
# Tracknumber color levels for MCS masks (limit to 256 to fit in a colormap)
489-
tracknumbers = track_dict['lifetime'].tracks
489+
tracknumbers = track_dict['lifetime'].tracks.values
490490
tn_nlev = np.min([len(tracknumbers), 256])
491491
if tn_nlev > 1:
492492
tn_levels = np.linspace(np.min(tracknumbers)+1, np.max(tracknumbers)+1, tn_nlev)

0 commit comments

Comments
 (0)