3 datasets on one skyplot
5 views (last 30 days)
Show older comments
osasunmwen efosa
on 6 Mar 2023
Commented: osasunmwen efosa
on 12 Mar 2023
%Example of the data i have for one sateliite
elevation = [30; 60; 90];
azimuth = [60; 90; 120];
MP = [0.2; 0.7; 0.9];
figure()
skyplot(azimuth, elevation)
% How do i include MP to this skyplot in such a way that colour gradient represents the magintude of MP
2 Comments
Accepted Answer
Arka
on 7 Mar 2023
Hi,
I tried to implement what you wanted using polarplot instead of skyplot.
elevation = [30; 60; 90];
azimuth = [60; 90; 120];
MP = [0.2 0.7 0.9];
cmap = flipud(jet(256)); % color map from blue to red
min_MP = min(MP);
max_MP = max(MP);
c = interp1(linspace(min_MP, max_MP, size(cmap,1)), cmap, MP);
% plot each value pair individually using polarplot
figure;
for i = 1:length(elevation)
h = polarplot(deg2rad(azimuth(i)), elevation(i), 'o', 'MarkerSize', 10, 'MarkerFaceColor', c(i,:), 'MarkerEdgeColor', 'k');
hold on;
end
%skyplot(azimuth, elevation, MP, 'o', 'MarkerSize', 10, 'MarkerFaceColor', c, 'MarkerEdgeColor', 'k');
set(gca, 'ThetaZeroLocation', 'top', 'ThetaDir', 'clockwise', 'RTick', [0 30 60 90], 'GridColor', 'k', 'GridAlpha', 0.2);
Here, the closest satellite has the warmest colour. If you want the opposite colour coding, instead of cmap = flipud(jet(256));, do cmap = jet(256);
To learn more about polarplot, please go through the MathWorks documentation link below:
3 Comments
Arka
on 8 Mar 2023
You can try removing the corresponding data points containing NaNs from all 3 vectors.
More Answers (0)
See Also
Categories
Find more on Holidays / Seasons in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!