在同一坐标系中,利用plot函数画出函数y=sinx及y=sinx 2,5,10阶泰勒展开的图形
时间: 2024-09-22 07:09:17 浏览: 150
在同一坐标系中,如果你想通过`matplotlib`库的`plot`函数绘制正弦函数y = sin(x)以及其2阶、5阶、10阶泰勒展开的图形,你可以按照以下步骤操作:
1. 首先,导入所需的库:
```python
import numpy as np
import matplotlib.pyplot as plt
```
2. 定义x轴范围并生成等间距的点:
```python
x = np.linspace(0, 2 * np.pi, 400)
```
3. 定义原始的正弦函数和对应的泰勒展开:
```python
def taylor_sin(n, x):
return sum((-1)**k * x**(2*k) / math.factorial(2*k) for k in range(1, n+1))
taylor_expansions = [taylor_sin(i, x) for i in [2, 5, 10]]
```
这里我们使用了numpy和math库,注意在实际运行时需要导入`math`库。
4. 绘制各个函数:
```python
plt.figure(figsize=(8, 6)) # 创建新图
for i, expansion in enumerate(taylor_expansions, start=1):
plt.plot(x, expansion, label=f"$n={i}$阶泰勒展开")
# 加上原函数
plt.plot(x, np.sin(x), 'k:', label='sin(x)', linewidth=2)
# 添加图例、标题和坐标轴标签
plt.title('正弦函数的泰勒级数')
plt.legend()
plt.xlabel('x')
plt.ylabel('f(x)')
plt.grid(True) # 显示网格
plt.show()
```
这将展示一个包含原始正弦函数及其不同阶数泰勒展开的图像,你可以看到随着阶数增加,泰勒展开逐渐逼近真实函数。
阅读全文