plotting a polynomial function
显示 更早的评论
How can I plot a polynomial function in MATLAB? for example:
89.9659+0.1110371T-0.001472155T^2+ 1.1E-5T^3-4.381E-8T^4+1E-10T^5
采纳的回答
更多回答(5 个)
Rubén Lumbiarres
2018-9-13
编辑:Walter Roberson
2018-9-15
x=-5:.1:5;
p=[1 -1 -11 9 18] % polynomial function
plot(x,polyval(p,x))
grid on
1 个评论
Brian Trease
2020-11-24
Thanks!
I made it one step easier, with no need to specify spacing...
fplot(@(x) polyval(p,x), [-5 5])
grid on
Fangjun Jiang
2011-12-14
Of course ezplot(), but you need to fix your formula.
ezplot('89.9659+0.1110371*T-0.001472155*T^2+ 1.1E-5*T^3-4.381E-8*T^4+1E-10*T^5')
You are asking to plot data that has a range of about 10^10 at one end, and about 10^20 at the other end. What are you expecting to see of interest?
T=linspace(100,1000,100);
p=89.9659+0.1110371*T-0.001472155*T.^2+ 1.1E-5*T.^3-4.381E-8*T.^4+1E-10*T.^5;
plot(T,p)
2 个评论
mohammad
2011-12-14
Fangjun Jiang
2011-12-14
No. Because you have small coefficients, the range of p is not from 10^2 to 10^20. The maximum value of p is around 7e4.
The point is, you can specify any range of T as you want, use linspace() or 100:100:1000, then use array power ".^" not the matrix power "^" to evaluate p, and then you can use plot().
x=-5:.1:5;
p=[1 -1 -11 9 18] % polynomial function
plot(x,polyval(p,x))
grid on
%solve1
fplot(@(x)89.9659+0.1110371.*x-0.001472155.*x.^2+1.1E-5.*x.^3-4.381E-8.*x.^4+1E-10.*x.^5)
类别
在 帮助中心 和 File Exchange 中查找有关 Polynomials 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



