How can i obtain a nice curve ?

1 Ansicht (letzte 30 Tage)
Mallouli Marwa
Mallouli Marwa am 14 Jan. 2017
Kommentiert: Star Strider am 15 Jan. 2017
Hi
How can i obtain a nice curve (like attached curve or logarithmic scale), when my program is
x= [1e3; 1e4; 1e5; 1e6; 1e7];
p=[7.87E-07 1.77E-06 1.72E-06 4.44E-07 5.03E-08];
plot(x,p)

Akzeptierte Antwort

Star Strider
Star Strider am 14 Jan. 2017
Bearbeitet: Star Strider am 14 Jan. 2017
See if this does what you want:
x= [1e3; 1e4; 1e5; 1e6; 1e7];
p=[7.87E-07 1.77E-06 1.72E-06 4.44E-07 5.03E-08];
figure(1)
loglog(x,p)
grid
xlabel('Load Resistance [\Omega]')
ylabel('Peak Power [mW/g^{2}]')
EDIT Forgot the square brackets ‘[]’ in ylabel.
  4 Kommentare
Mallouli Marwa
Mallouli Marwa am 15 Jan. 2017
How can i use spline to loglog(x,p) ?
Star Strider
Star Strider am 15 Jan. 2017
You can use interp1 with the 'spline' and loglog options to create the interpolation vector, but it will not produce the curve you want. I already did that without success.
Your best option is to provide a diagram or mathematical model of the system you are measuring, and do a (probably nonlinear) fit to it. (I might be able to develop an equation for the model in the diagram if it has fewer than 5 parameters.)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

John D'Errico
John D'Errico am 14 Jan. 2017
loglog(x,p)
grid on
It seems a decent enough curve to me. You could use a spline to interpolate, or just a low order polynomial, as fit to the logs of your data. Anytime you have data that spans many orders of magnitude, it is a hint to use logs.
  1 Kommentar
Mallouli Marwa
Mallouli Marwa am 15 Jan. 2017
How can i interpolate to obtain a nice curve ?

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Interpolation finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by