Я пытаюсь получить мои 421 последовательных дат (показанных по оси x), сгруппированных в один месяц.Таким образом, вместо того, чтобы маркировать Janarary в течение 31 дня, я бы хотел, чтобы именно эти 31 день были одним лейблом под названием «Январь / 2000» и т. Д. Для других месяцев.
Я бы включил изображение, но мне нужно больше повторений.Таким образом, ось Y - это широта, а ось X - каждый месяц как временной ряд.Любая помощь, пожалуйста?
import numpy as np
from netCDF4 import Dataset
from matplotlib.dates import date2num
from datetime import datetime, timedelta
from netCDF4 import num2date, date2num, date2index
### by defining the directory pathway ###
expname='xnsbi'
inpath = 'E://Data Files (NetCDF)/'+expname+'/Monthly_AOD/'
mnames= ['0sep','0oct','0nov','0dec','1jan','1feb','1mar','1apr','1may','1jun','1jul', '1aug','1sep','1oct','1nov']
######################### Extracting the data for the plots
### Looping the variables needed to be extracted for the different months ###
Dates = []
array = []
for name in mnames:
infile= inpath+expname+'a_pd200'+name+'sAODtracersMDSJamesB.nc' # Complete
#the pathway to loop all files #
vn=Dataset(infile)
lon = vn.variables['longitude'][:]
lat = vn.variables['latitude'][:]
time = vn.variables['t'][:]
aod550 = vn.variables['aod'][:]
### Set the time and date of each plots ####
t_unit="days since 2000-09-01T00:00:00Z"
t_cal = "360_day"
dates =num2date(time,units=t_unit,calendar=t_cal)
fmt = '%m/%Y'
label = dates[0].strftime(fmt)
print(label)
ntime=len(time)
Mlon = np.mean(aod550,axis=1)
array.append(Mlon)
fig = plt.figure(figsize=(15.745,15), edgecolor='w')
Здесь вы можете видеть, что есть 421 дней подряд.Это показывает на моей оси х 421 разных дат, (очень напряженно).
sdate=str(label)
Dates.append(sdate)
data = np.zeros((145,421)) # For the zonal mean
for i in range(421):
data[:,i] = array[i]
######## Construct the plot
cs = plt.contourf(Dates,lat,data,cmap='jet')