Obtaining vertical and horizontal values from polarplot

2 Ansichten (letzte 30 Tage)
matlabkid602
matlabkid602 am 26 Nov. 2021
Bearbeitet: Les Beckham am 4 Jan. 2022
I have data theta and rho data which produces a polar plot via the polarplot function.
I want to obtain the values for every angle of the y value divided by the x value, I am struggling on how to obtain this from the polarplot. Any help much appreciated.

Antworten (1)

Les Beckham
Les Beckham am 26 Nov. 2021
Bearbeitet: Les Beckham am 4 Jan. 2022
The polarplot function won't give you the x and y data. So, you need to calculate it yourself.
I've made up r and theta values since you didn't provide yours.
theta = linspace(0, 2*pi, 100);
r = 1 + (1 + cos(theta))/2;
polarplot(theta, r)
% calculate x and y from r and theta
x = r.*sin(theta);
y = r.*cos(theta);
% plot x divided by y against theta
plot(theta, x./y) % note the ./ to get element-by-element divide
grid on
xlabel 'theta'
ylabel 'x/y'
Note that x divided by y actually goes to infinity when y = 0. Fortunately, the linearly spaced theta vector that I used didn't result in any y values that were exactly zero or we would have gotten an error. due to dividing by zero.

Kategorien

Mehr zu Resizing and Reshaping Matrices finden Sie in Help Center und File Exchange

Produkte


Version

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by