Plotting target points within an n radius plot

15 vues (au cours des 30 derniers jours)
sree chak
sree chak le 4 Sep 2020
Commenté : sree chak le 4 Sep 2020
I have created a detection range of 20 m radius and essentially created x,y,z points within that range randomly. What I want to be able to do is plot the detection circle, and then plot [detectionx, detectiony, guessz] as a point (maybe a red point) Similar to this (but without the blue points). Any help will be appreciated.
DetectionRange = 2*pi*(rand(1,1));
DetectionRadius = 20*sqrt(rand(1,1));
Detectionx = 20 + DetectionRadius.*cos(DetectionRange); %x coordinate of the dipole is randomly selected somewhere within the radius of 20.
Detectiony = 20 + DetectionRadius.*sin(DetectionRange); %y coordinate of the dipole is randomly selected somewhere within the radius of 20.
Guessz = 0;

Réponse acceptée

Akira Agata
Akira Agata le 4 Sep 2020
How about the following solution?
% Data points (N = 10, for example.)
numPoints = 10;
detRange = 2*pi*(rand(numPoints,1));
detRadius = 20*sqrt(rand(numPoints,1));
% Convert to cartesian coordinages
[detX, detY] = pol2cart(detRange,detRadius);
% Show the result
figure
rectangle(...
'Position', [-20 -20 40 40],...
'Curvature', [1 1],...
'EdgeColor', 'r')
hold on
scatter(detX,detY,'r^')
daspect([1 1 1])
grid on
box on
  1 commentaire
sree chak
sree chak le 4 Sep 2020
This is brilliant and just what I needed!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Vector Fields dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by