编写python程序。使用plt.scatter()函数绘制sin()函数曲线,请在曲线中添加一个表示X轴和Y轴的直线,并在X轴方向输出刻度标记文本,如下图所示。 提示:X轴和Y轴是利用plt.plot函数绘制,然后在合适位置输出标记字符(plt.text())。
时间: 2024-02-23 11:00:31 浏览: 73
好的,以下是实现上述功能的Python代码:
```python
import numpy as np
import matplotlib.pyplot as plt
# 生成sin函数的数据
x = np.arange(0, 4*np.pi, 0.1)
y = np.sin(x)
# 绘制sin函数曲线
plt.scatter(x, y, color='blue', s=5)
# 添加X轴和Y轴直线
plt.plot([0, 4*np.pi], [0, 0], color='black', linestyle='-', linewidth=0.5)
plt.plot([0, 0], [-1, 1], color='black', linestyle='-', linewidth=0.5)
# X轴刻度位置及标签内容
x_ticks = np.arange(0, 4*np.pi+0.1, np.pi/2)
x_labels = ['0', '$\pi/2$', '$\pi$', '$3\pi/2$', '$2\pi$']
plt.xticks(x_ticks, x_labels)
# 添加标签
plt.text(4*np.pi, -0.2, 'X')
plt.text(-0.3, 1, 'Y')
# 设置图像标题和横纵坐标标签
plt.title('sin function with axis lines and ticks')
plt.xlabel('X')
plt.ylabel('Y')
# 显示图像
plt.show()
```
代码解释:
1. 生成sin函数的数据:利用numpy中的`arange()`函数生成x轴的数值,然后通过求sin函数得到y轴对应的数值。
2. 绘制sin函数曲线:利用matplotlib中的`scatter()`函数绘制散点图,其中的color指定曲线颜色,s指定点的大小。
3. 添加X轴和Y轴直线:利用`plot()`函数绘制直线,其中的参数分别为直线的起始点和终止点的x、y坐标。
4. X轴刻度位置及标签内容:利用`arange()`函数生成刻度位置,然后通过列表的方式生成刻度标签,最后利用`xticks()`函数设置刻度位置和标签。
5. 添加标签:利用`text()`函数在图像上添加文本,其中的参数分别为文本的x、y坐标和文本内容。
6. 设置图像标题和横纵坐标标签:分别利用`title()`、`xlabel()`、`ylabel()`函数设置图像标题和横纵坐标的标签。
7. 显示图像:利用`show()`函数显示生成的图像。
阅读全文