Obtaining vertical and horizontal values from polarplot

1 visualización (últimos 30 días)
matlabkid602
matlabkid602 el 26 de Nov. de 2021
Editada: Les Beckham el 4 de En. de 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.

Respuestas (1)

Les Beckham
Les Beckham el 26 de Nov. de 2021
Editada: Les Beckham el 4 de En. de 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.

Categorías

Más información sobre Resizing and Reshaping Matrices en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by