У меня есть файл .nc с размерами (1461, 257, 512), соответствующими (время, широта, долгота). Данные в основном равны нулю, но есть случайные целочисленные записи, которые по сути являются индексами для экстремальных значений в исходных данных.
Например, во времени = 1 массив равен почти всем 0, а также нескольким значениям, равным «52», что указывает на наличие экземпляра экстремальных значений на этом временном шаге. В первом временном шаге есть другие целые числа, но я бы хотел пока их игнорировать. В дальнейших временных шагах есть другие случаи "52". Я хочу построить 1461 изображение, по одному для каждого временного шага, каждое из которых показывает контур, в котором геолокационные значения «52» появляются в массиве, но где все остальное равно нулю.
В конечном итоге я хочу обобщить, чтобы иметь 1461 таких графиков для КАЖДОГО целочисленного значения, которое отображается в массиве, но я был бы рад выяснить, как сделать только одну серию.
Комментариивключите некоторые из моих неудачных попыток.
file_111 = Dataset('/.../blob2.nc')
tim = file_111.variables['time'][:]
lon = file_111.variables['lon'][:]
lat = file_111.variables['lat'][:]
ext = file_111.variables['ext'][:,:,:]
#I tried reshaping the data to search the flattened lat/lon dimensions but that only gave me a single plot with multiple contours of different values
ext2 = ext.reshape(1461,131584)
#I also tried iterating over all dimensions but only got a single plot with multiple contours on it
for i in range(0,1461):
for j in range(0,257):
for k in range(0,512):
if ext[i,j,k] == 52:
plt.contour(lon, lat, ext[i,:,:])
plt.savefig("/.../blob_time"+str(i))
plt.close('all')