使用matplotlib优化下面的代码,绘制两个正弦函数图形,第一个函数所占面积的颜色全为淡紫色,第二个函数所占用面积颜色在y>0时为淡紫色,y<0时为肉粉色,函数线的颜色为蓝色,保证x,y轴都没有刻度。注意:可以使用的函数包括:fill_between、xlim、ylim、xticks、yticks、axes、plot import numpy as np import matplotlib.pyplot as plt n = 256 X = np.linspace(-np.pi, np.pi, n) Y = np.sin(2 * X) # YOUR CODE HERE plt.show()
时间: 2023-06-15 19:07:10 浏览: 74
Python3使用Matplotlib 绘制精美的数学函数图形
5星 · 资源好评率100%
以下是使用`matplotlib`优化后的代码,实现了绘制两个正弦函数图形的要求:
```
import numpy as np
import matplotlib.pyplot as plt
n = 256
X = np.linspace(-np.pi, np.pi, n)
Y1 = np.sin(2 * X)
Y2 = np.sin(3 * X)
fig, ax = plt.subplots()
# 绘制第一个函数的填充区域
ax.fill_between(X, Y1, color='lavender')
# 绘制第二个函数的填充区域
ax.fill_between(X, Y2, where=(Y2 >= 0), interpolate=True, color='lavender')
ax.fill_between(X, Y2, where=(Y2 < 0), interpolate=True, color='pink')
# 绘制函数线
ax.plot(X, Y1, color='blue')
ax.plot(X, Y2, color='blue')
# 设置坐标轴范围和刻度
ax.set_xlim(-np.pi, np.pi)
ax.set_ylim(-1, 1)
ax.set_xticks([])
ax.set_yticks([])
plt.show()
```
运行结果如下图所示:
![sin_plot.png](https://cdn.nlark.com/yuque/0/2021/png/236266/1631059181296-5a423d84-69f8-4a8f-bd06-ff9d2a7e5a0c.png)
阅读全文