How to linearly fit a semilog graph

27 Ansichten (letzte 30 Tage)
Sonia Goyal
Sonia Goyal am 19 Feb. 2021
Kommentiert: Star Strider am 4 Mär. 2021
Hello
I have my data file which is attached below. I have to plot this as semilog ( log scale on Y-axis) and have to linearly fit like the image attached. Please help me with the same

Antworten (2)

Jonas
Jonas am 19 Feb. 2021
  1 Kommentar
Sonia Goyal
Sonia Goyal am 26 Feb. 2021
Thank you for your rresponse. But this isn't working for this data.

Melden Sie sich an, um zu kommentieren.


Star Strider
Star Strider am 26 Feb. 2021
Try this:
D1 = readmatrix('Data.xlsx');
x = D1(:,1);
y = D1(:,2);
[ymax,idx] = max(y);
idxrng = idx:numel(y);
objfcn = @(b,x,minlim) b(1).*exp(b(2).*x) + minlim;
B = fminsearch(@(b) norm(y(idxrng) - objfcn(b,x(idxrng),y(end))), [ymax; rand]);
figure
plot(x, y)
hold on
plot(x(idxrng), objfcn(B,x(idxrng),y(end)), '-r', 'LineWidth',1.5)
hold off
grid
set(gca, 'YScale','log')
It’s not easy to fit those data.
Using:
idxrng = 1:numel(y);
objfcn = @(b,x,minlim) b(1).*x.*exp(b(2).*x) + minlim;
instead, might be more accurate.
  4 Kommentare
Sonia Goyal
Sonia Goyal am 4 Mär. 2021
Thank you for you response.
Star Strider
Star Strider am 4 Mär. 2021
My pleasure.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Graphics Object Identification finden Sie in Help Center und File Exchange

Tags

Produkte


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by