(一)使用matlab画多项式函数图像
在用matlab画五次多项式的时候,发现使用y=(0.2771*t^3 - 0.081*t^4 + 0.0063*t^5);
总是会报错。搜了搜资料,发现可以这么画:
例如:五次多项式(quintic polynomial) y=0.2771t3-0.081t4+0.0063t5
.m脚本文件
t=0:0.01:5;
p=[0.0063,-0.081,0.2771,0,0,0];
y=polyval(p,t);
figure(1)
plot(t,y,'r','linewidth',2)
grid on
hold on;
(二)使用python画多项式函数图像
例如:五次多项式(quintic polynomial) y=0.2771t3-0.081t4+0.0063t5
.py脚本文件
# coding=utf-8
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['Arial'] # 如果要显示中文字体,则在此处设为:SimHei
plt.rcParams['axes.unicode_minus'] = False # 显示负号
x = np.linspace(0,5)
y = 0.2771*x*x*x-0.081*x*x*x*x+0.0063*x*x*x*x*x
plt.figure(figsize=(10, 5))
plt.grid(linestyle="--") # 设置背景网格线为虚线
ax = plt.gca()
ax.spines['top'].set_visible(False) # 去掉上边框
ax.spines['right'].set_visible(False) # 去掉右边框
plt.plot(x, y, marker='o', color="blue", label="V0=10m/s", linewidth=1.5)
plt.yticks(fontsize=12, fontweight='bold')
plt.title("Quintic Polynomial Graph", fontsize=12, fontweight='bold')
plt.xlabel("Time/s", fontsize=13, fontweight='bold')
plt.ylabel("Vehicle lateral distance/m", fontsize=13, fontweight='bold')
plt.legend(loc=0, numpoints=1)
leg = plt.gca().get_legend()
ltext = leg.get_texts()
plt.setp(ltext, fontsize=12, fontweight='bold') # 设置图例字体的大小和粗细
plt.show()
更新:2020年4月1日
偶然间看到matlab还有一种画多项式函数的方法,而且就是之前报错的那种方法。
.m脚本
t = 0:0.01:5;
y = 0.2771 * t.^3 - 0.081 * t.^4 + 0.0063 * t.^5; %注意.和^之间没有空格
plot(t, y, 'r')