绘制指定样式的网格

本文介绍了如何使用Python的Matplotlib库绘制包含正弦和余弦曲线的图表,包括指定线条样式、透明度、刻度标签、指向型注释以及填充颜色。
摘要由CSDN通过智能技术生成

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

1.绘制折线图:

import numpy as np
import matplotlib.pyplot as plt
 
# 1.准备数据
x = np.linspace(-np.pi, np.pi, 256, endpoint=True)  
y_cos, y_sin = np.cos(x), np.sin(x)
 
 
# 2.绘制折线
#plt.plot
plt.plot(x, y_cos, color="blue", linewidth=1.0, alpha=0.5, label="COS")
plt.plot(x, y_sin, color="red", linewidth=1.0, label="SIN")
 
 
 
plt.show()

效果图:

2. 第二步:图表辅助元素定制

#plt.title
plt.title(" Cos & Sin ")    
#plt.xticks
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
plt.yticks([-1.0,-0.5, 0.0,+0.5, +1.0],
           [r'$-1.0$',r'$-0.5$', r'$0.0$',r'$0.5$',r'$1.0$'])  
#plt.legend
plt.legend(loc='upper left')       
#plt.grid
plt.grid(True)  

3.添加指向型注释文本

plt.annotate('cos(1)', xy=(1, np.cos(1)), xycoords='data', xytext=(10, 30),
             textcoords='offset points', arrowprops=dict(arrowstyle="->"))

4. 

图表样式美化(填充颜色)
plt.fill_between(x, y_sin, y_cos,(y_cos > y_sin),color="blue", alpha=0.25)

5.最终效果图

import numpy as np
import matplotlib.pyplot as plt

# 1.准备数据
x = np.linspace(-np.pi, np.pi, 256, endpoint=True)
y_cos, y_sin = np.cos(x), np.sin(x)

# 2.绘制折线

plt.plot(x, y_cos, color="pink", linewidth=1.0, alpha=0.5, label="COS")
plt.plot(x, y_sin, color="green", linewidth=1.0, label="SIN")
# 3.图表辅助元素定制(图表标题,刻度标签,图例,网格,指向型注释文本)

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$'])   #设置x轴上的刻度标签

plt.yticks([-1.0,-0.5, 0.0,+0.5, +1.0],
           [r'$-1.0$',r'$-0.5$', r'$0.0$',r'$0.5$',r'$1.0$'])     #设置y轴上的刻度标签

plt.legend(loc='upper left')         #设置图例

plt.grid(True)        #设置网格

#添加指向型注释文本
plt.annotate('cos(1)', xy=(1, np.cos(1)), xycoords='data', xytext=(10, 30),
             textcoords='offset points', arrowprops=dict(arrowstyle="->"))

# 4.图表样式美化(填充颜色)
#plt.fill_between
plt.fill_between(x, y_sin, y_cos,(y_cos > y_sin),color="blue", alpha=0.25)

plt.show()

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值