How to plot a log log equation
2 views (last 30 days)
Show older comments
I am trying to plot the following equation in matlab.. log ts = log c + nlog(v/a). I am required to find the value of c(which is the intercept) and n(which is the slope). The plot is ts against v/a.
Pls how do i proceed on this?
2 Comments
Benjamin Kraus
on 7 Mar 2018
Can you please clarify...
You said you want to plot an equation, which you can only do if you know the values of c and n. However, you then say you are required to find the values of c and n, which suggests you have data you want to plot, then fit a curve to the data.
Are you trying to plot an equation, or are you trying to fit a line to your data to extract values for c and n?
Answers (1)
Akira Agata
on 8 Mar 2018
It seems that your data can be better fitted by 'Ts = b1 + b2*(v/a)' rather than 'Ts = b1 + b2*log(v/a)'. Here is an example to fit the data and plot in log-log graph.
Ts = [3.48, 15.78, 10.17, 8.13]';
va = [0.226, 0.536, 0.416, 0.367]';
X1 = [ones(size(va)) va];
b1 = X1\Ts;
X2 = [ones(size(va)) log(va)];
b2 = X2\Ts;
vaa = linspace(0.2,0.6)';
Ts1 = [ones(size(vaa)), vaa]*b1;
Ts2 = [ones(size(vaa)), log(vaa)]*b2;
loglog(va,Ts,'o-')
hold on
loglog(vaa,Ts1)
loglog(vaa,Ts2)
legend({'Data','Ts = b1 + b2*va','Ts = b1 + b2*log(va)'})
xlabel('v/a','FontSize',12)
ylabel('Ts','FontSize',12)
grid on

2 Comments
Akira Agata
on 8 Mar 2018
Hi Okechukwu-san,
Please insert space between 'ones(size(va))' and 'va', or just copy&paste my sample code.
See Also
Categories
Find more on Data Logging in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!