Replies: 2 comments 7 replies
-
As Laura Dreyer has already mentioned in response to this question in the google group, the answer is that your GRIB data are masked to land points only - that is why your contourf plot has the white regions. I'm guessing that your data are ERA5-Land and that you're looking at a point on the coast of Italy. I have some daily ERA5-Land global data, and if I load a day of that I get a cube I'm calling t2m, which looks like this:
I can find the indices of the point closest to your point of interest like this (there may be better ways):
Which tells me that the closest point is at x index 140 and y index 491. I can then print the surrounding few points from the data array:
Which does indeed show that that point (the one in the middle of the extracted region) is indeed masked but has non-masked neighbours. So there is no issue with your code, but you do need to choose a point for which the field has data. In passing, I don't think that the interpolation will perform a triangulation in any case: I think it will just select the point with the closest coordinate values to your specified point (sort of like I did to find the indices above), essentially treating the field's latitude and longitude coordinates as Cartesian coordinates (with appropriate handling of longitude wrap-around). I hope this is useful. |
Beta Was this translation helpful? Give feedback.
-
Please re-open if you would like further help with this 🙂 |
Beta Was this translation helpful? Give feedback.
-
I am quite new to using iris so I apologize for the newbie question.
I'm trying to interpolate GRIB temperature data at a certain point with known latitude and longitude.
For example, I've downloaded a GRIB file for air temperature over 2 days, hourly, converted in celsius degrees:
Now, I made a daily mean of temperature, so the new cube has 2 values of temperature:
The new temperature values are calculated over the entire area (latitude and longitude) of original GRIB file:
Now, I'm trying to calculate a new temperature value at given latitude and longitude interpolating the temperatures already calculated as daily mean. What I am trying to achieve is something like "resizing" the pixel resolution.
I did this before in MatLab and R applying Delanauy triangulation (https://it.mathworks.com/help/matlab/ref/delaunay.html)
With iris I tried this:
But when I print the calculated temperature values I have this (no Delanauy triangulation so far):
I am quite sure there is something I did not understand or doing wrong, Any help or suggestions would be very much appreciated. Many thanks.
Beta Was this translation helpful? Give feedback.
All reactions