Add regions of statistical significance to a map plot

7 次查看(过去 30 天)
Hello,
I am using the following to map out a trend in data over a region:
ax = worldmap(latlim, lonlim);
S = shaperead('landareas','UseGeoCoords',true);
surfacem(lat, lon, inpdata)
geoshow([S.Lat], [S.Lon],'Color','black');
This should be simple but I am not seeing fora with it. Is there any way to now add in a surfacem plot of a matrix holding p-values of the trends? I would like to simply add a cross where the corresponding cell in the p-value matrix is < 0.05.
Thanks!

采纳的回答

Chad Greene
Chad Greene 2015-8-29
You'll find a few hatch filling functions on the File Exchange site. For example, the ones mentioned here.
Generally, to apply non-mapping toolbox plotting functions to maps, you'll need to do something like
[x,y] = mfwdtran(lat,lon);
contourf(x,y,z)
and then you'd be able to use hatchfill as shown in the Pick-of-the-Week example.
  5 个评论
mashtine
mashtine 2015-9-23
Thanks a lot Chad. That did the trick on the projection side of thing but now I do not think that findobj is finding any patches on my plot as hPatch1 returns a 0x0 GraphicsPlaceholder. I attached my script to see if you can make any sense as to why I am getting this error.
I am getting the error:
Index exceeds matrix dimensions.
Error in hatchfill (line 96)
hax = get(A(1),'parent');
and I believe that is the case because hPatch1 is empty as no patch handle was found.
You have been a big help thus far so thank you.
mortain
mortain 2015-10-3
Hello,
I am getting the same error after updating to Matlab 2015.
Have you found a fix for this problem?
Cheers

请先登录,再进行评论。

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by