matplotlib 第一天入门

用 matplotlib 做的一个简单的sin(x)和1/2cos(x)的函数图像

import numpy as np
import matplotlib.pyplot as  mp

# #设置窗口颜色等属性
# mp.figure(facecolor='gray')
#将-π到π拆成1000个点
x = np.linspace(-np.pi,np.pi,1000)

y = np.sin(x)
z = np.cos(x)/2

#横轴刻度
x_val_list = [-np.pi,-np.pi/2,0,np.pi/2,np.pi]
#横轴的文本
x_text_list = ['-π',r'$-\frac{\pi}{2}$','0','π/2','π']
#纵轴的刻度
y_val_list = [-1,-0.5,0,0.5,1]
#设置横轴的刻度和显示文本
mp.xticks(x_val_list,x_text_list)
#设置纵轴的刻度
mp.yticks(y_val_list)
#画图的曲线类型,粗细,颜色,透明度
mp.plot(x,y,linestyle=':',linewidth=3,color='orange',label=r'$y=sin(x)$')
mp.plot(x,z,linestyle='--',linewidth=2,color='red',alpha=0.8,label=r'$y=-\frac{1}{2}cos(x)$')

#获取当前坐标轴
ax = mp.gca()
#获取其中某一个坐标轴
ax_left = ax.spines['left']
#将左边坐标轴移动到0点
ax_left.set_position(('data',0))
#将下坐标轴移动到0点
ax.spines['bottom'].set_position(('data',0))
#去掉右边的坐标轴
ax.spines['right'].set_color('none')
#去掉上边的坐标轴
ax.spines['top'].set_color('none')
#绘制特殊点
#设置特殊点的横坐标
xpoints = [np.pi/2,np.pi/2]
#设置特殊点的纵坐标
ypoints = [1,0]
#标记特殊点
mp.scatter(xpoints,ypoints,marker='D',s=60,edgecolor='black',facecolor='limegreen')
#为某点添加备注
mp.annotate(
r'[$\frac{\pi}{2}$,1]',xycoords='data',xy=(np.pi/2,1),
textcoords='offset points',
xytext =(30,10),
fontsize=14,
arrowprops=dict(arrowstyle='->',
               connectionstyle='angle3'))

# #设置可视区域
# mp.xlim(0,np.pi)
# mp.ylim(0,1)

#设置图例
mp.legend(loc='upper left')
#设置图标的标题
mp.title(r'sin(x) and $-\frac{1}{2}cos(x)$',fontsize=16)
#设置x轴的描述文本
mp.xlabel('y',fontsize=14)
#设置y轴的描述文本
mp.ylabel('x',fontsize=14)
#设置刻度参数
mp.tick_params(labelsize=8)
#设置网格线
mp.grid(linestyle=':')

mp.show()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值