How can I plot 3D polar plot in MATLAB

I have three values, azimuth, elevation and corresponding data points. is it possible to plot 3D polar plot using this three values. and 1 want to show the third value in colour. I am looking forward to hear your suggestions. A sample data is attaching herewith
Thanking You,

 採用された回答

Star Strider
Star Strider 2017 年 9 月 12 日

0 投票

There may be File Exchange contributions for 3D polar plots. It is possible to use the sph2cart function to plot your data in 3D, however in Cartesian coordinates, so losing the angle data in the plot.
A 2D polar plot with the values in scaled colour is not difficult to code using the polarscatter function (in R2016b and later):
D = load('data.txt');
Az = D(:,1);
El = D(:,2);
Rd = D(:,3);
cn = ceil(max(El)); % Number Of Colors
cm = colormap(jet(cn));
figure(2)
polarscatter(Az*pi/180, Rd, [], cm(fix(El),:), 'filled')
grid on
Tbis colours the points by the value of ‘El’. Here, since the maximum ‘El’ value defines 21 colours, no scaling of it is needed. In other situations (very high or very low maximum values), scaling would be necessary to get adequate colour definition.

5 件のコメント

john pappachen
john pappachen 2017 年 9 月 13 日
Thanks
Star Strider
Star Strider 2017 年 9 月 13 日
My pleasure.
If my Answer helps you solve your problem, please Accept it!
Freddy Ngankam
Freddy Ngankam 2020 年 4 月 29 日
hello,
please i have a 48x18 Matrix. the first columb ist the azimuth, the second ist the elongation and the rest of the columbs are my data. i want to plot each datacolum a 3d-plot but i am trying it since two week without succes
can you helpme please ( i am knew in matlab)
thank you
Alexi
Alexi 2023 年 1 月 14 日
Hi thanks for your reply, How can we print the magnitudes of the values ​​of the points on the points?
Star Strider
Star Strider 2023 年 1 月 14 日
@Alexi — Use the text function. See the documentation section on Input Arguments.
@Freddy Ngankam — You would likely need to use the pol2cart function, and then plot them in Cartesian coordinates.
.

サインインしてコメントする。

その他の回答 (1 件)

Juan Esteban Villegas
Juan Esteban Villegas 2021 年 5 月 26 日

0 投票

Hey I made this function to plot a scatter 3d plot, it is rather raw but it does the job maybe you can modify it to make it better.
Best
Juan

3 件のコメント

hema vardhan patti
hema vardhan patti 2023 年 5 月 3 日
Hey, I really need the syntax for this plot. Will help me a lot in my thesis
Juan Esteban Villegas
Juan Esteban Villegas 2023 年 5 月 3 日
Hey Hema, you can use something like:
theta = linspace(0,10*pi,401);
phi = linspace(-pi/2,pi/2,401);
rho = linspace(1,1,401);
polarscatter3(theta,phi,rho,'x','r','LineWidth',0.5)
hema vardhan patti
hema vardhan patti 2023 年 5 月 4 日
Thank you for responding Juan, But how to get from a table of values or excel.

サインインしてコメントする。

カテゴリ

ヘルプ センター および File ExchangePolar Plots についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by