使用matplotlib绘制sin与cos函数并完成需求

需求:绘制一个包含正弦曲线和余弦曲线的图表,具体要求如下:
(1)    正弦曲线的样式:红色、线宽为1.0;
(2)    余弦曲线的样式:蓝色、线宽为1.0,透明度为0.5;
(3)    x轴的刻度标签为“-π”、 “-π/2”、 “0”、 “π/2”、 “-π”;
(4)    在x=1、y=np.cos(1)的位置添加指向型注释文本;
(5)    为正弦曲线和余弦曲线封闭起来的区域填充绿色,透明度为0.25.
最终的效果见运行结果图示

一.导入模块

import numpy as np
import matplotlib.pyplot as plt

二.准备数据

x = np.linspace(-np.pi, np.pi, 256, endpoint=True)  
y_cos, y_sin = np.cos(x), np.sin(x)

三.开始绘制图像

plt.plot(x,y_sin,color='r',linewidth=1)#绘制sin函数
plt.plot(x,y_cos,color='b',linewidth=1,alpha=0.5)#绘制cos函数
#color显示颜色,linewidth改变线宽,alpha改变透明度

四.图表辅助元素定制(图表标题,刻度标签,图例,网格,指向型注释文本)

plt.title("Cos & Sin")#图表标题
plt.xticks([-np.pi,-np.pi/2,0,np.pi/2,np.pi],[r'$-\pi$',r'$-\pi/2$',r'$0$',r'$\pi/2$',r'$\pi$'])#刻度标签
plt.yticks ([-1,-0.5,0,0.5,1]) #刻度标签
lines=plt.plot(x,y_sin,x,y_cos)
plt.legend(lines,['正弦','余弦'],shadow=True,fancybox=True,loc='upper left')#设置图例
plt.annotate("cos(1)",xy=(1,np.cos(1)),xytext=(np.pi/3,0.75),arrowprops=dict(arrowstyle="->",))设置指向性注释文本


plt.grid(True,linestyle="--",color="gray",linewidth="0.5",axis="both")网格

#legend函数主要相关参数:loc:loc参数用于控制图立在图表中的位置

                                            handles:handles参数表示有图形表示构成的列表

                                            labels:labels参数表示有图列项构成的列表

                                            shadow:shadow参数控制是否在土里后面显示阴影

                                            fancybox:fancybox参数控制是否为图里设置圆角边框

#annotate函数主要相关参数:s:表示注释文本的内容

                                                xy:表示被注释的点的坐标位置,接收元组(x,y)       

                                                xytext:表示注释文本所在的坐标位置。接收元组(x,y)

                                                bbox:表示注释文本的裱框属性字典

                                                arrowprops:通过向字典中添加键值对来控制箭头的显示(常见控                                                  制箭头可以去查询matplotlib中文网 https://www.matplotlib.org

  五.图表样式美化(填充颜色)         

plt.fill_between(x,y_sin,y_cos,y_cos>y_sin,color='green',alpha=0.25)#可以随意设置想要填充的地方

  六. 展示图像

plt.show()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值