Effacer les filtres
Effacer les filtres

How to make the x-axis on a logarithmic scale while keeping the y-axis in dB?

125 vues (au cours des 30 derniers jours)
Hello,
I have calculated the PSD of my signal in dB.
lets say,
f=frequency
Nc= (PSD)Power spectral density in dB
plot(f,Nc);
Now, I would like to change the x-axis to logarithmic scale while keeping the y-axis in dB and plot it. Could you please tell me how to do that?
Thanks
Gaurav

Réponse acceptée

Wayne King
Wayne King le 25 Avr 2012
semilogx(f,10*log10(Nc))

Plus de réponses (2)

Sean de Wolski
Sean de Wolski le 25 Avr 2012
Wayne's method is probably best. However, if you need finer control you can set the axes' xscale property to log.
h = axes;
set(h,'xscale','log')

gaurav Nanda
gaurav Nanda le 25 Avr 2012
Thanks for the help.
I also need to perform curve fitting and to find the value of (C)
This is how I am doing it
g = fittype('a+b./(f.^c)',... 'independent', 'f',... 'coefficients', {'a','b','c'});
f1 = fit(f, Nc, g)
where a= thermal noise
b/f^c is pink noise
I have defined the fittype but I am not able to find the value of c.

Catégories

En savoir plus sur Parametric Spectral Estimation 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