binning data and mapping

6 次查看(过去 30 天)
akk
akk 2019-7-24
Hi,
I am trying to bin lat/lon data into 5x5 grids, and then plot the boxes. I have 3 columns: lat, long and temperature.
So far I have:
minlat=18.9980;
minlong=-96.5120;
gridspacing=5;
latidx = 1 + floor((lat_open - minlat) ./ gridspacing);
longidx = 1 + floor((long_open - minlong) ./ gridspacing);
num=accumarray( [latidx(:), longidx(:)], 1) %finds the # measurements in each grid
%Then I create the map
figure
m_proj('lambert','long',[-98 -81],'lat',[18 31])
m_gshhs_i('patch',[.7 .7 .7],'edgecolor','k')
grid on; hold on
m_grid('box','fancy','tickdir','in')
But, how do I get the coordinates of the grids and show them as boxes on the map? Thanks for your help!

回答(1 个)

Roshni Garnayak
Roshni Garnayak 2019-8-5
You can use the binscatter function to create a binned scatter plot.
binscatter(latidx , longidx ,[5 5]);
A binned scatter plot partitions the data space into rectangular bins and displays the count of data points in each bin using different colors.
For examples and detailed explanation, refer to the following link:
  3 个评论
akk
akk 2019-8-9
Is there a way to call or index the data within a bin. For example, if I wanted to find all temperatures in bin 1?
Bishwas Lal Shrestha
I am trying to create a similar type of plot in mollweide projection. But I am not quite sure how we can use "binscatter" in map projection!

请先登录,再进行评论。

Community Treasure Hunt

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

Start Hunting!

Translated by