我想知道是否可以在Matlab中绘制y = mx+b
形式的一行?我使用polyfit
来获得包含斜率和截距的1x2数组。
这是我到目前为止所做的:
lineFit = polyfit(tauBin, a5array, 1);
plot((lineFit(1)*x + lineFit(2)))
我该如何策划?
答案 0 :(得分:14)
有两种方式可以立即浮现在脑海中。第一个是FPLOT:
>> m = 2; b = 1; >> fplot(@(x)m*x+b, [0 10]);
第二种是直接在PLOT命令的调用中计算y值:
>> m = 2; b = 1; x = 1:10; >> plot(x, m*x+b);
答案 1 :(得分:4)
统计工具箱中有REFLINE个功能。可能是最简单的任务:
refline(m,b)
或者如果您想更改线路属性:
hr = refline(m,b);
set(hr,'Color','r')
它使用当前轴的限制。因此,如果您稍后更改限制,可能会更容易删除它(delete(hr)
)并再次绘制。