How to plot a log log equation
2 次查看(过去 30 天)
显示 更早的评论
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 个评论
Benjamin Kraus
2018-3-7
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?
回答(1 个)
Akira Agata
2018-3-8
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 个评论
Akira Agata
2018-3-8
Hi Okechukwu-san,
Please insert space between 'ones(size(va))' and 'va', or just copy&paste my sample code.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Logging 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!