Obtaining vertical and horizontal values from polarplot

2 次查看(过去 30 天)
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.

回答(1 个)

Les Beckham
Les Beckham 2021-11-26
编辑:Les Beckham 2022-1-4
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.

类别

Help CenterFile Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息

产品


版本

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by