图表元素和样式的添加

通过绘制正弦和余弦图来讲解

需求:绘制一个包含正弦曲线和余弦曲线的图表,具体要求如下:
(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, 'red', linewidth=1.0, label='SIN')   
plt.plot(x, y_cos, 'blue', linewidth=1.0, alpha=0.5, label='COS') 

其中,linewidth参数控制折线的宽度

          label参数指定图例显示的标签,方便直接调用legend()函数添加图例

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

plt.title("Cos & Sin")     #设置标题
plt.xticks([-np.pi, -np.pi/2, 0, np.pi/2, np.pi], ['-π', '-π/2', '0', 'π/2', 'π'])  #设置x轴的刻度标签
plt.yticks([1.0, 0.5, 0.0, -0.5, -1.0])   #设置y轴的刻度标签
plt.legend(loc='upper left' )    #使图例显示在左上方
plt.grid(linewidth=0.5)    #默认显示网格类型为major,线宽为0.5
plt.annotate("cos(1)", xy=(1, np.cos(1)),  #指向的点

                     xytext=(np.pi/2.5, 0.8),        #文本表格的位置

                     arrowprops=dict(arrowstyle="->"))  #箭头的类型

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

plt.fill_between(x, y_sin, y_cos,

                         y_cos>y_sin,

                         color='g', alpha=0.25)  #余弦曲线大于正弦曲线的区域填充颜色

plt.show()

完整代码如下:

#导入模块
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_sin, 'r', linewidth=1.0, label='SIN')
plt.plot(x, y_cos, 'b', linewidth=1.0, alpha=0.5, label='COS')

# 3.图表辅助元素定制(图表标题,刻度标签,图例,网格,指向型注释文本)
plt.title("Cos & Sin")
plt.xticks([-np.pi, -np.pi/2, 0, np.pi/2, np.pi], ['-π', '-π/2', '0', 'π/2', 'π'])
plt.yticks([1.0, 0.5, 0.0, -0.5, -1.0])
plt.legend(loc='upper left' )
plt.grid(linewidth=0.5)
plt.annotate("cos(1)", xy=(1, np.cos(1)), xytext=(np.pi/2.5, 0.8), arrowprops=dict(arrowstyle="->"))

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

plt.show()

最终的效果见运行结果图示:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值