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

导语       

       图表辅助元素是指在图表中添加的一些额外的元素,用于帮助读者更好地理解图表内容。定制这些元素能够使得图表更加生动、清晰、易读。

       matplotlib 中提供了多个函数用于填充多边形或区域,分别为fill()、fill_between()和fillbetweenx()。其中,fill()函数用于填充多边形;fill_between()或fill_betweenx()函数分别用于填充两条水平曲线或垂直曲线之间的区域。下面介绍fill_between()函数的用法。

fill_between(x, y1, y2=0, where=None, interpolate=False, step=None, data=None, **kwargs)

该函数常用参数的含义如下:
·x:表示x轴坐标的序列。
·y1:表示第一条曲线的y轴坐标。
·y2:表示第二条曲线的y轴坐标。
·where:布尔值,表示要填充区域的条件。y1>y2说明第一条曲线位于第二条曲线上方时填充;y1<y2说明第二条曲线位于第一条曲线上方时填充。 

 实操

一、导入模块 

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)

三、绘制折线图并添加辅助元素

line1, = plt.plot(x, y_cos, color='b', linewidth=1.0, alpha=0.5)
line2, = plt.plot(x, y_sin, color='r', linewidth=1.0)

#添加标题
plt.title('Cos & Sin')
#添加x轴和y轴标签
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, -0.5, 0, 0.5, 1.0])
#添加图例
plt.legend(handles=[line1, line2], labels=['COS','SIN'], fancybox=True, shadow=True, 
           loc='upper left')
#显示网格
plt.grid(visible=True, which='major', linewidth=0.3, color='purple')
#添加注释文本
plt.annotate('cos(1)', xy=(np.pi/3.2, 0.55), xytext=(np.pi/3, 0.8), arrowprops= 
             {'arrowstyle':'->'})   #xy:被注释的点的坐标。xytext:被注释文本的坐标

注意: 此处line1、line2后面加逗号是用于解码,否则会报一下错误。

UserWarning: Legend does not support [<matplotlib.lines.Line2D object at 0x00000195927E36C8>] instances. A proxy artist may be used instead. 

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

plt.fill_between(x, y_cos, y_sin, y_cos>y_sin, color='green', alpha=0.25)

五、展示图表 

plt.show()

展示结果 

                                                                                                                                                                                                                                                                                                

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值