实验楼——Matplotlib二维绘图小练习

本文详细介绍如何使用Python的matplotlib库和numpy库绘制定制化的数学曲线,包括正弦曲线、余弦曲线,并添加了特定点与直线。文章还展示了如何调整坐标轴刻度,设置坐标轴位置,以及如何使用箭头进行注释。

在这里插入图片描述

解答代码:

import matplotlib.pyplot as plt
import numpy as np
#创建曲线
x1 = np.linspace(-np.pi, np.pi, 1000)
y1_1 = np.sin(x1)
y1_2 = np.cos(x1)
#创建点与直线
x2 = 2*np.pi/3
y2_1 = np.sqrt(3)/2
y2_2 = -1/2
#绘制正弦曲线、余弦曲线、直线、点
plt.plot(x1, y1_1, color='r', label='Sin Function')
plt.plot(x1, y1_2, color='b', label='Cos Function')
plt.plot([x2, x2], [y2_1, y2_2], ls='--')
plt.scatter(x2, y2_1, color='r')
plt.scatter(x2, y2_2, color='b')
plt.legend()
#修改坐标轴刻度间隔
new_ticks1 = np.linspace(-np.pi, np.pi, 5)
print(new_ticks1)
plt.xticks(new_ticks1)
new_ticks2 = np.linspace(-1, 1, 2)
print(new_ticks2)
plt.yticks(new_ticks2)
#新建坐标轴并修改刻度
ax = plt.gca()
ax.spines['top'].set_color('none')
ax.spines['right'].set_color('none')
ax.xaxis.set_ticks_position('bottom')   #用bottom代替x轴
ax.yaxis.set_ticks_position('left')     #用left代替y轴
ax.set_xticklabels(('-π','-π/2','0', 'π/2', 'π'))
ax.spines['left'].set_position(('data',0))
ax.spines['bottom'].set_position(('data',0))#axes 百分比
#增加箭头标注
plt.annotate('Cos(2π/3)=-1/2', xy=(2.1, -0.5), xytext=(1.3, -1),
             arrowprops=dict(facecolor='black', width=1, headwidth=7))
plt.annotate('Sin(2π/3)=√3/2', xy=(2.1, 0.87), xytext=(2.8, 1.2),
             arrowprops=dict(facecolor='black', width=1, headwidth=7))
#绘制结果
plt.show()

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值