用Python使用numpy库和matplotlib.pyplot库绘制y=e-x次幂sin(2x)和 y=sin(2πx)的函数曲线
时间: 2024-11-22 10:40:13 浏览: 24
在Python中,你可以使用NumPy库生成数据,并结合Matplotlib库的pyplot模块来绘制函数曲线。这里有两个函数:`e**(-x)` 和 `sin(2πx)`。让我们来一步步创建这两个函数并展示它们。
```python
import numpy as np
import matplotlib.pyplot as plt
# 定义x值范围和步长
x = np.linspace(0, 5, 400) # 从0到5,包含5,共400个点
# 函数y = e^(-x) * sin(2πx) 和 y = sin(2πx)
y1 = np.exp(-x) * np.sin(2*np.pi*x)
y2 = np.sin(2*np.pi*x)
# 创建两个子图
fig, ax1 = plt.subplots()
# 对第一个函数进行绘制
ax1.set_title("y = e^(-x) * sin(2πx)")
ax1.plot(x, y1, 'r', label='e^(-x)*sin(2πx)', linestyle='--') # 使用红色虚线
# 对第二个函数进行绘制
ax2 = ax1.twinx() # 在同一个图上添加另一个坐标轴
ax2.set_ylabel('y = sin(2πx)', color='g') # 设置新坐标轴颜色为绿色
ax2.plot(x, y2, 'g', label='sin(2πx)', linestyle='-') # 使用绿色实线
# 设置标签、图例和网格线
ax1.grid(True)
ax1.legend(loc='upper left')
# 合并两条轴的刻度
lines, labels = ax1.get_legend_handles_labels()
lines2, labels2 = ax2.get_legend_handles_labels()
ax2.legend(lines + lines2, labels + labels2, loc='lower right')
plt.show()
```
上述代码会分别绘制两个函数的图像,并在同一张图上用不同颜色区别开来。
阅读全文