How can I polar plot in decibels?
Mostra commenti meno recenti
I have the following results in dBs, I need to make a polar graph with these values, but I can not find the correct way to graph them. I hope you can help me, this is the code I have:
puntos=101;
teta=linspace(-pi/2,pi/2,puntos);
corte0=[ -7.838577 -7.832224 -7.813205 -7.781625 -7.737674 -7.681614 -7.613759 -7.534502 -7.44429 -7.343629 -7.233057 -7.113168 -6.984587 -6.847963 -6.703968 -6.553286 -6.396613 -6.234628 -6.068019 -5.897437 -5.723536 -5.54693 -5.368196 -5.187878 -5.006474 -4.824449 -4.642216 -4.460145 -4.278563 -4.097766 -3.918009 -3.739528 -3.562553 -3.387297 -3.214005 -3.042917 -2.874333 -2.708591 -2.546094 -2.387311 -2.232779...
-2.083104 -1.938968 -1.801116 -1.670343 -1.547495 -1.43342 -1.328996 -1.235081 -1.152506 -1.082048 -1.024429 -0.980308 -0.950234 -0.934665 -0.933967 -0.948368 -0.978023 -1.022938 -1.083016 -1.158051 -1.247738 -1.351648 -1.469277 -1.600019 -1.743196 -1.898051 -2.06376 -2.239445 -2.424194 -2.617045 -2.816997 -3.023051 -3.234174 -3.449336 -3.667496 -3.887619 -4.108674 -4.329646 -4.549521 -4.767314 -4.982032 -5.192729...
-5.398455 -5.598276 -5.791293 -5.976641 -6.15345 -6.320908 -6.478218 -6.624628 -6.759425 -6.881949 -6.991595 -7.0878 -7.170061 -7.237973 -7.291164 -7.329369 -7.352368 -7.360037];
parche=db2mag(corte0);
corte90= [-21.7136 -21.422581 -20.646576 -19.587852 -18.420361 -17.246315 -16.113091 -15.037758 -14.023014 -13.065556 -12.159986 -11.300657 -10.482368 -9.700682 -8.951984 -8.233437 -7.54299 -6.879227 -6.241355 -5.629077 -5.042615 -4.482525 -3.949742 -3.4454 -2.970901 -2.527738 -2.117475 -1.741663 -1.401798 -1.09923 -0.835085 -0.61021 -0.425063 -0.279627 -0.173322 -0.104944 -0.072548 -0.073378 -0.10389 -0.159741...
-0.235912 -0.326925 -0.427152 -0.531135 -0.634019 -0.731884 -0.821932 -0.902473 -0.972771 -1.032644 -1.082048 -1.120685 -1.147753 -1.161962 -1.161733 -1.145631 -1.112919 -1.064068 -1.001096 -0.927695 -0.849008 -0.771236 -0.701124 -0.645415 -0.61041 -0.601672 -0.623827 -0.680485 -0.774288 -0.906942 -1.07932 -1.291582 -1.543242 -1.833276 -2.160211 -2.522179 -2.916971 -3.342113 -3.794876 -4.27235 -4.771453 -5.288964...
-5.821557 -6.365805 -6.918194 -7.475142 -8.032939 -8.58776 -9.135592 -9.672182 -10.192956 -10.692926 -11.166648 -11.608166 -12.011011 -12.368385 -12.673313 -12.919049 -13.099545 -13.209938 -13.247106];
parche90=db2mag(corte90);
polar(teta,corte0,'k')
hold on;
polar(teta,corte90)
The objective is to have a graph like this, with the labels in dBs.

Risposta accettata
Più risposte (1)
dpb
il 11 Lug 2018
You're in luck; TMW did introduce a somewhat more capable polar plotting capability in R2016b...
hP=polarplot(teta,corte0,'k');
hold on
hP(2)=polarplot(teta,corte90);
rlim([-40 0])
It still is lacking in some features, amongst which is there is no 'RLabel' nor 'ThetaLabel' property altho there is associated 'xxxTickLabel'. Why left of the overall label is anybody's guess. Anyways, complaints aside...
hAx=gca; % returns a new polaraxis object
hTxt=text(deg2rad(82),4,'dB'); % label for the r-axis units...trial and error to locate

1 Commento
Pilar Jiménez
il 11 Lug 2018
Categorie
Scopri di più su Polar Plots in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

