Making polar plots in dB with the most negative value in the center !

24 vues (au cours des 30 derniers jours)
Ole
Ole le 9 Déc 2025 à 14:27
Commenté : Star Strider le 10 Déc 2025 à 10:59
How to obtain the function: "polar_db" ? (Matlab 2021a does not know it !).
Please advice,
Regards Ole

Réponse acceptée

Star Strider
Star Strider le 9 Déc 2025 à 15:19
Alternatively, you can subtract the most negative dB value from the rest, then scale the radius grid lines --
Perhaps something like this --
a = 0:0.01:2*pi;
r = 1 + sin(a);
r = mag2db(abs(r));
[rmin,rmax] = bounds(r)
rmin = -110.8921
rmax = 6.0206
rs = r - rmin;
figure
polarplot(a, rs)
Ax = gca;
rtix = Ax.RTick;
rtixs = rescale(rtix, rmin, rmax);
Ax.RTickLabel = compose('%.1f dB',rtixs);
% get(Ax)
.
  2 commentaires
Ole
Ole le 10 Déc 2025 à 10:55
Thanks a lot, it woks out fine.
Best regards
Ole (user in Denmark)
Star Strider
Star Strider le 10 Déc 2025 à 10:59
My pleasure!
If my Answer helped you solve your problem, please Accept it!
.

Connectez-vous pour commenter.

Plus de réponses (1)

dpb
dpb le 9 Déc 2025 à 14:48
<It's a FEX submission>, not Mathworks-supplied in MATLAB
There's second there with the title "Polar_db" as well although I didn't go compare to see what might be the difference between the two...

Catégories

En savoir plus sur Polar Plots dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by