Map plot (surfm) of polar regions missing data

2 views (last 30 days)
Hi all,
I have global model output and am trying to plot the data from a view above the south pole. I am using the surfm function (although using contourfm, or surfacem yields similar results) to plot the data on top of an axes such that:
axesm('MapProjection','vperspec',...
'Frame','on','Grid','on',...
'Origin',[-90 0 0],...
'MeridianLabel','on','ParallelLabel','on')
surfm(lat,lon,data)
where:
lat = 145 x 1 double array (latitude of centre of grid box)
lon = 192 x 1 double array (longitude of centre of grid box)
data = 145 x 192 double array (model data)
The output of this results in a map, except that it contains a white 'wedge' at the edge of the dataset (see attached image). This doesn't occur when I plot the data in other plotting programs. Any ideas as to how to get it to plot the edge data and fill this wedge?
I have tried applying the example found at this link to my data, with the same result.
I assume it is a problem with my longitude array (since it is a longitudinal slice), but this is direct output from the model and as mentioned before, works fine with other plotting programs. My longitude array is of the following form:
lon = [0.9385, 0.9385+1.8750i, ..., 359.0625]
Any help would be greatly appreciated.
Thanks! weirdkhar

Accepted Answer

Chad Greene
Chad Greene on 10 Mar 2015
Hi Weirdkhar,
First, if you make a lot of maps centered about the South Pole, I recommend initializing with antmap or ncpolarm. It's a bit more streamlined than calling the axesm function with a bunch of arguments.
As for the missing data, a manual fix is to append your lat, lon, and data matrices with an extra column, which will be a copy of the very first column. That process is described here.
  2 Comments
weirdkhar
weirdkhar on 11 Mar 2015
Perfect! Thanks Chad. And thanks pointing me in the direction of antmap!

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!