fig, axes = plt.subplots(nrows=2, ncols=4,figsize=(19,13))
fig.patch.set_facecolor('white')
count = 0
for ax in axes.flat:
    try:
        area = areas[count]
    except:
        ax.axis('off')
        continue

    area = areas[count]

    area_grid = area_boundaries[area]
    area_tag = area_tags[area]
    area_label = area_labels[area]
    cut_test = modules.area_cut(area,lats,lons,tags,area_grid,area_tag)

    cut_refs = refs[cut_test]
    
    y_array = np.average(pressures[cut_test,:],axis=0)

    print obs_seasonal_waveforms.shape
    obs_seasonal_waveform_cut = obs_seasonal_waveforms[cut_test,:,:]
    obs_seasonal_amp_cut = obs_seasonal_amplitudes[cut_test,:]
    obs_seasonal_ph_cut = obs_seasonal_phases[cut_test,:]
    model_seasonal_waveform_cut = model_seasonal_waveforms[cut_test,:,:]
    model_seasonal_amp_cut = model_seasonal_amplitudes[cut_test,:]
    model_seasonal_ph_cut = model_seasonal_phases[cut_test,:]
    print obs_seasonal_waveform_cut.shape

    print len(cut_refs)
obs_no2_data = obs_no2_data[:,start_obs_ind:end_obs_ind]

for ax in axes.flat:
    try:
        area = areas[count]
    except:
        ax.axis('off')
        continue

    area_grid = area_boundaries[area]
    area_tag = area_tags[area]
    area_label = area_labels[area]
    
    print area

    cut_test_o3 = modules.area_cut(area,obs_o3_lats,obs_o3_lons,obs_o3_tags,area_grid,area_tag)
    cut_test_no2 = modules.area_cut(area,obs_no2_lats,obs_no2_lons,obs_no2_tags,area_grid,area_tag)
    cut_test_co = modules.area_cut(area,obs_co_lats,obs_co_lons,obs_co_tags,area_grid,area_tag)

    obs_o3_cut = obs_o3_data[cut_test_o3,:]
    obs_no2_cut = obs_no2_data[cut_test_no2,:]
    obs_co_cut = obs_co_data[cut_test_co,:]

    print obs_o3_cut.shape
    print obs_no2_cut.shape
    print obs_co_cut.shape
    
    if obs_o3_cut.shape[0] == 0:
        count+=1
        continue
    if obs_no2_cut.shape[0] == 0:
Beispiel #3
0
fig.patch.set_facecolor('white')
count = 0
for ax in axes.flat:
    try:
        area = areas[count]
    except:
        ax.axis('off')
        continue

    print area

    area_grid = area_boundaries[area]
    area_tag = area_tags[area]
    area_label = area_labels[area]

    cut_test = modules.area_cut(area, obs_lats, obs_lons, tags, area_grid,
                                area_tag)

    obs_d_w = np.nanmean(obs_daily_waveforms[cut_test, :], axis=0)
    obs_s_w = np.nanmean(obs_seasonal_waveforms[cut_test, :], axis=0)

    model_d_w = np.nanmean(model_daily_waveforms[cut_test, :], axis=0)
    model_s_w = np.nanmean(model_seasonal_waveforms[cut_test, :], axis=0)

    if plot_type == 'd':
        ave_obs_waveform = obs_d_w
        ave_model_waveform = model_d_w
    if plot_type == 's':
        ave_obs_waveform = obs_s_w
        ave_model_waveform = model_s_w

    if ave_or_no == 'n':
Beispiel #4
0
obs_no2_data = obs_no2_data[:, start_obs_ind:end_obs_ind]

for ax in axes.flat:
    try:
        area = areas[count]
    except:
        ax.axis('off')
        continue

    area_grid = area_boundaries[area]
    area_tag = area_tags[area]
    area_label = area_labels[area]

    print area

    cut_test_o3 = modules.area_cut(area, obs_o3_lats, obs_o3_lons, obs_o3_tags,
                                   area_grid, area_tag)
    cut_test_no2 = modules.area_cut(area, obs_no2_lats, obs_no2_lons,
                                    obs_no2_tags, area_grid, area_tag)
    cut_test_co = modules.area_cut(area, obs_co_lats, obs_co_lons, obs_co_tags,
                                   area_grid, area_tag)

    obs_o3_cut = obs_o3_data[cut_test_o3, :]
    obs_no2_cut = obs_no2_data[cut_test_no2, :]
    obs_co_cut = obs_co_data[cut_test_co, :]

    print obs_o3_cut.shape
    print obs_no2_cut.shape
    print obs_co_cut.shape

    if obs_o3_cut.shape[0] == 0:
        count += 1
Beispiel #5
0
    #count = 0
    #for ax in axes.flat:
        #try:
            #area = areas[count]
        #except:
            #ax.axis('off')
            #continue

    count = 0
    for area in areas:
        print area
        area_grid = area_boundaries[area]
        area_country = area_countries[area]
        area_label = area_labels[area]

        cut_test = modules.area_cut(area,obs_lats,obs_lons,tags,area_grid,obs_country,area_country,obs_refs)

        print len(obs_daily_waveform[cut_test,:])
        obs_d_w = np.nanmean(obs_daily_waveform[cut_test,:],axis=0)
        obs_s_w = np.nanmean(obs_seasonal_waveform[cut_test,:],axis=0)

        if plot_type == 'd':
            ave_obs_waveform = obs_d_w
            max_ph = np.argmax(ave_obs_waveform)
            max_amp = (np.max(ave_obs_waveform) - np.min(ave_obs_waveform))/2.
            ave = np.average(ave_obs_waveform)
        if plot_type == 's':
            ave_obs_waveform = obs_s_w
            max_ph = np.argmax(ave_obs_waveform)/24.
            max_amp = (np.max(ave_obs_waveform) - np.min(ave_obs_waveform))/2.
            ave = np.average(ave_obs_waveform)
Beispiel #6
0
        ax.axis('off')
        continue

    print area
    obs_ave_o3 = []
    obs_twentyfifth_o3 = []
    obs_seventyfifth_o3 = []
    geoschem_ave_o3 = []
    geoschem_twentyfifth_o3 = []
    geoschem_seventyfifth_o3 = [] 

    area_grid = area_boundaries[area]
    area_tag = area_tags[area]
    area_label = area_labels[area]
    
    cut_test_o3 = modules.area_cut(area,obs_lats_o3,obs_lons_o3,tags_o3,area_grid,area_tag)

    obs_cut_o3 = obs_o3[cut_test_o3,:]
    geoschem_cut_o3 = geoschem_o3[:,cut_test_o3]

    n_sites_o3 = obs_cut_o3.shape[0]
    
    print 'nsites = ',n_sites_o3

    if n_sites_o3 > 0:
        for m in range(len(dates_year)):
            obs_area_year = []
            geoschem_area_year = []

            print dates_year[m]
            obs_s = np.where(obs_date ==int(dates_year[m]))[0]