使用matplotlib库在x,y轴下画三角函数和一元函数

 首先导入所需要的两个库,np.pi表示数学中的兀。
import matplotlib.pyplot as mp
import numpy as np

设置三个所需要画的函数,可以自行设置,这里使用y=sin(x),y=cos(x)和y=2x-3这三个较常用的函数。
# ## linspace 创建等差数列 start,stop,num  开始点,结束点,样本数据量
x = np.linspace(-2 * np.pi, 2 * np.pi, 10000)
#设置y函数
y = np.sin(x)
y2 = np.cos(x)
y3 = x * 2 - 3
#设置x,y轴的边界值
mp.xlim(-2 * np.pi - 1.5, 2 * np.pi + 1.5)
mp.ylim(-2, 2)

画出x、y的坐标轴。
ax = mp.gca()  ### 获取当前坐标轴字典
# set_position(('data', 0))
# 设置坐标轴的位置。 该方法需要传入2个元素的元组作为参数
# type: # <str> 移动坐标轴的参照类型  一般为'data' (以数据的值作为移动参照值) # data
# val:  参照值 ## 0
ax.spines['bottom'].set_position(('data', 0))  ## spines['bottom']。获取其中的某个坐标轴
ax.spines['left'].set_position(('data', 0))
ax.spines['right'].set_color('white')
ax.spines['top'].set_color('white')

画出3个函数。
mp.plot(x, y, linestyle="-.", linewidth=2, color=(1, 185 / 255, 15 / 255), alpha=0.9, label='y=sin(x)')
mp.plot(x, y2, linestyle="--", linewidth=2, color='blue', alpha=0.9, label='y=cos(x)')
mp.plot(x, y3, linestyle="-", linewidth=2, color='green', alpha=0.9, label='y=2x-3')

画出标注的点
#### [0]:水平坐标组成的序列,[1]垂直坐标组成的序列,
#### marker: 点型
###  s: 大小  edgecolors:边缘色      facecolor:填充色
###     zorder : 绘制图层编号(编号越大,图层越靠上)
mp.scatter([0], [1], marker='H', s=110, edgecolors='red', facecolor='green', zorder=4)

左上角展示标签
mp.legend(loc=2)

展示图
mp.show()

 完整代码如下:

import matplotlib.pyplot as mp
import numpy as np

# ## linspace 创建等差数列 start,stop,num  开始点,结束点,样本数据量
x = np.linspace(-2 * np.pi, 2 * np.pi, 10000)
#设置y函数
y = np.sin(x)
y2 = np.cos(x)
y3 = x * 2 - 3
#设置x,y轴的边界值
mp.xlim(-2 * np.pi - 1.5, 2 * np.pi + 1.5)
mp.ylim(-2, 2)


# # r取消文本中的所有转义字符,原样输出
# # xticks 设置x周坐标
# mp.xticks([-2 * np.pi, -np.pi, 0, np.pi, np.pi * 2], [r'$-2\pi$', 'B', "C", "D", r'$\frac{4}{2}\pi$'])
# # 备注中显示的文本内容  r'$\frac{4}{2}\pi$'

#画出x,y坐标轴
ax = mp.gca()  ### 获取当前坐标轴字典
# set_position(('data', 0))
# 设置坐标轴的位置。 该方法需要传入2个元素的元组作为参数
# type: # <str> 移动坐标轴的参照类型  一般为'data' (以数据的值作为移动参照值) # data
# val:  参照值 ## 0
ax.spines['bottom'].set_position(('data', 0))  ## spines['bottom']。获取其中的某个坐标轴
ax.spines['left'].set_position(('data', 0))
ax.spines['right'].set_color('white')
ax.spines['top'].set_color('white')

# 画出3个函数
mp.plot(x, y, linestyle="-.", linewidth=2, color=(1, 185 / 255, 15 / 255), alpha=0.9, label='y=sin(x)')
mp.plot(x, y2, linestyle="--", linewidth=2, color='blue', alpha=0.9, label='y=cos(x)')
mp.plot(x, y3, linestyle="-", linewidth=2, color='green', alpha=0.9, label='y=2x-3')

#画出标注的点
#### [0]:水平坐标组成的序列,[1]垂直坐标组成的序列,
#### marker: 点型
###  s: 大小  edgecolors:边缘色      facecolor:填充色
###     zorder : 绘制图层编号(编号越大,图层越靠上)
mp.scatter([0], [1], marker='H', s=110, edgecolors='red', facecolor='green', zorder=4)

#左上角展示标签
mp.legend(loc=2)

#展示图
mp.show()

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值