提示:本文使用python的matplotlib库完成
一、题目
在一张图上画出sin(x),cos(x),tan(x), cot(x),arctan(x),arccot(x),然后以原点为中心,画一个圆。要求使用不同的颜色和线形
二、实现步骤
1、导入相关函数库并建立变量
import numpy as np
import matplotlib.pyplot as plt
# 设置 x 的范围和步长
x = np.arange(-2*np.pi, 2*np.pi, 0.01)
# 计算 y 值
y_sin = np.sin(x)
y_cos = np.cos(x)
y_tan = np.tan(x)
y_cot = 1/np.tan(x)
y_arctan = np.arctan(x)
y_arccot = np.arctan(1/x)
2、创建画布,并绘制函数曲线
# 创建画布和子图
fig, ax = plt.subplots()
# 绘制 sin(x) 曲线
ax.plot(x, y_sin, color='blue', label='sin(x)', linestyle='-')
# 绘制 cos(x) 曲线
ax.plot(x, y_cos, color='red', label='cos(x)', linestyle=':')
# 绘制 tan(x) 曲线
ax.plot(x, y_tan, color='green', label='tan(x)', linestyle='-')
# 绘制 cot(x) 曲线
ax.plot(x, y_cot, color='purple', label='cot(x)', linestyle='-.')
# 绘制 arctan(x) 曲线
ax.plot(x, y_arctan, color='orange', label='arctan(x)', linestyle='--')
# 绘制 arccot(x) 曲线
ax.plot(x, y_arccot, color='brown', label='arccot(x)', linestyle='--')
# 绘制单位圆
theta = np.linspace(0, 2*np.pi, 100)
x_circle = np.cos(theta)
y_circle = np.sin(theta)
ax.plot(x_circle, y_circle, color='black', label='unit circle')
3、设置坐标轴范围、标签,并添加图例,完成图片显示
# 设置坐标轴范围和标签
ax.set_xlim([-2*np.pi, 2*np.pi])
ax.set_ylim([-4, 4])
ax.set_xlabel('x')
ax.set_ylabel('y')
new_ticks = np.linspace(-5,5,11)
plt.xticks(new_ticks)
plt.yticks(new_ticks)
# 添加图例
ax.legend()
# 显示图形
plt.show()
4、完整代码
import numpy as np
import matplotlib.pyplot as plt
# 设置 x 的范围和步长
x = np.arange(-2*np.pi, 2*np.pi, 0.01)
# 计算 y 值
y_sin = np.sin(x)
y_cos = np.cos(x)
y_tan = np.tan(x)
y_cot = 1/np.tan(x)
y_arctan = np.arctan(x)
y_arccot = np.arctan(1/x)
# 创建画布和子图
fig, ax = plt.subplots()
# 绘制 sin(x) 曲线
ax.plot(x, y_sin, color='blue', label='sin(x)', linestyle='-')
# 绘制 cos(x) 曲线
ax.plot(x, y_cos, color='red', label='cos(x)', linestyle=':')
# 绘制 tan(x) 曲线
ax.plot(x, y_tan, color='green', label='tan(x)', linestyle='-')
# 绘制 cot(x) 曲线
ax.plot(x, y_cot, color='purple', label='cot(x)', linestyle='-.')
# 绘制 arctan(x) 曲线
ax.plot(x, y_arctan, color='orange', label='arctan(x)', linestyle='--')
# 绘制 arccot(x) 曲线
ax.plot(x, y_arccot, color='brown', label='arccot(x)', linestyle='--')
# 绘制单位圆
theta = np.linspace(0, 2*np.pi, 100)
x_circle = np.cos(theta)
y_circle = np.sin(theta)
ax.plot(x_circle, y_circle, color='black', label='unit circle')
# 设置坐标轴范围和标签
ax.set_xlim([-2*np.pi, 2*np.pi])
ax.set_ylim([-4, 4])
ax.set_xlabel('x')
ax.set_ylabel('y')
new_ticks = np.linspace(-5,5,11)
plt.xticks(new_ticks)
plt.yticks(new_ticks)
# 添加图例
ax.legend()
# 显示图形
plt.show()
三、运行结果
四、总结
在绘制arccot函数的时候,发现numpy库没有该函数,通过检索发现,numpy库不具备arccot的函数,但可以通过np.arctan()函数进行变换