How to set size of scatterm marker to km and make it "fixed size" as I zoom
조회 수: 5 (최근 30일)
이전 댓글 표시
Hi all, I'm building a map that scatters satellite detections onto a geoshow map. Code is below: my problem is that each detection as a temporal resolution of 0.375km. So, I would like my markers to replicate that (aka each circle has a radius of 0.375 km); the problem is that the scatterm units are in "point units", and change in size as I zoom (relative to the map, in my zoom view they are the same). I would like to make my scatters the same relative to the map no matter who much I zoom
% initiate fig
figure ()
usamap([39.5,41],[-122,-120])
hold on
grid on
% plot info, not relevant to problem
h(1) = geoshow(Dixie_Perim,'facecolor','k'); % Fire Perimeter in black
h(2) = geoshow(IR_flyover_polygon, 'FaceColor','r', 'facealpha',0.2);
h(3) = geoshow(scattered_heat);
h(4) = geoshow(intense_heat, 'FaceColor','#EDB120');
% PROBLEM:
% point size for scatterm marker
s = 50;
% This is the scatter I would like to set to km units
% there is a "z" used for coloring, which is the fire radiative power
% magnitude
h(5)= scatterm(found_coords_viirs(:,1), found_coords_viirs(:,2),s,frp_viirs(:,1), 'filled');
% continue plotting other info
h(6) = geoshow(isolate_heat,'DisplayType','point');
h(7) = geoshow(perim, 'EdgeColor', 'b','LineWidth',2,'facealpha',0);
% legend
legend([h(1),h(2),h(3),h(4),h(5),h(6), h(7)],'Final Dixie Fire Perimeter','Flyover polygon','Scattered heat', ...
'Intense heat', 'VIIRS', 'Isolated heat sources', '07-16 Perimeter', 'AutoUpdate','off');
Resulting image; my scatters are not fixed size relative to the map and I have no idea what they represent km wise. Their coverage is likely inaccurate

Please help, thank you!
댓글 수: 0
답변 (1개)
Debraj
2023년 10월 5일
Hello @Katrina,
I understand that you are trying to plot points on a map keeping its size same relative to the map using “scatterm”. From the documentation of “scatterm” I found the following information:
scatterm(LAT,LON,S,C) displays colored circles at the locations
specified by the vectors LAT and LON (which must be the same size).
Here you can specify S to be a vector of the pointer sizes, with a scale equivalent to your requirement. Refer to the following similar MATLAB Answers post for more information: https://in.mathworks.com/matlabcentral/answers/268595-marker-size-based-on-value?s_tid=srchtitle .
For further information on “scatterm” function, you can go through the following MATLAB documentation: https://in.mathworks.com/help/map/ref/scatterm.html?searchHighlight=scatterm&s_tid=srchtitle_support_results_1_scatterm#d126e159861
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Graphics Object Properties에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!