Plotting antenna field patterns in spherical coordinates
이전 댓글 표시
Hi, I have a 2D array which of the form A(theta, phi) and I want to plot A as a 3D surface. I have read advice which suggests to use the sph2cart function to convert to Cartesian coordinates, then use surf or mesh, but as size(A) = 46 90, i.e. it is not a square 2D array, it will not work. Any suggestions? Thanks
채택된 답변
추가 답변 (2개)
Ebrahim Forati
2020년 6월 10일
2 개 추천
Just added a couple of fixes to Kelley's answer:
theta = linspace(-pi/2, pi/2, 90); % theta is w.r.t. xy plane
phi = linspace(0, 2*pi, 46);
[theta, phi] = meshgrid(theta, phi);
A = ones(size(theta));
[x,y,z] = sph2cart(phi, theta, A); % fixed this line too
mesh(x,y,z)
Vishwanath Iyer
2021년 6월 3일
0 개 추천
Consider the following function in Antenna Toolbox for plotting radiation patern data:
카테고리
도움말 센터 및 File Exchange에서 Antennas, Microphones, and Sonar Transducers에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!