3.Matplotlib绘图--添加标注

添加适当标注,可提高图形的可读性;

常用标注包含,坐标轴的值和描述,legand对图像中的线描述,图像任意地方添加文字描述等。

1.添加X/Y轴范围设置,及注释

import numpy as np
import matplotlib.pyplot as plt
x=np.linspace(-5,5,100)
y1=2*x+1
y2=x**2
#设定X/Y轴范围
plt.xlim(-1,2)
plt.ylim((-2,3))

#添加X/Y轴描述
plt.xlabel('I am X')
plt.ylabel('I am Y')

plt.plot(x,y1)
plt.plot(x,y2)
plt.show()

2.添加刻度线

'''
'''
#添加刻度线ticks
new_ticks = np.linspace(-2,2,11) #取值(-2,2)范围,采样11个点
print(new_ticks)
plt.xticks(new_ticks)

#字符串代替数字刻度,显示更直观意义
plt.yticks([-1,0,1,2,3],['level1','level2','level3','level4','level5'])

plt.plot(x,y1,color='red',linewidth=5.0,linestyle='-')
#区分两条线,设置线为blue, 线宽=1.0,‘--’
plt.plot(x,y2,color='blue',linewidth=1.0,linestyle='--')
plt.show()

3.设置坐标轴边框,添加个title

#gca get current axis
#设置坐标轴边框
ax = plt.gca()
ax.spines['right'].set_color('red')
ax.spines['top'].set_color('none')

#添加标题
plt.title(r'$hello\ world$',fontsize=30)

 

#把X轴的刻度设置为bottom,Y设置位'left'
ax.xaxis.set_ticks_position('bottom')
ax.yaxis.set_ticks_position('left')

#设置bottom,left到零点
ax.spines['bottom'].set_position(('data',0))
ax.spines['left'].set_position(('data',0))

plt.plot(x,y1,color='red',linewidth=5.0,linestyle='-')
plt.plot(x,y2,color='blue',linewidth=1.0,linestyle='--')
plt.show()

3.legand

plt.legend([L1,L2],['test1','test2'],loc='upper right')

 

4.添加文字标注

plt.plot(x,y1,color='red',linewidth=2.0,linestyle='-')
#plt.plot(x,y2,color='blue',linewidth=1.0,linestyle='--')
x0=0.5
y0=2*x0 + 1
#画点
plt.scatter(x0,y0,s=100,color='b')
#画虚线
plt.plot([x0,x0],[y0,0],'g--',lw=2)

#r'$xxxx$'
#xy=蓝色点位置
#xytext:描述框相对xy位置
#textcoords='offset points',以xy为原点偏移xytext
#arrowprops = 画弧线箭头,'---->', rad=.2-->0.2弧度
plt.annotate(r'$2x+1=%s$'%y0,xy=(x0,y0),xytext=(+30,-30),textcoords='offset points',fontsize=16,
             arrowprops=dict(arrowstyle='->',connectionstyle='arc3,rad=.2'))

#放置纯文字描述
#位置:-2,2
#内容:r'$xxxx$'
plt.text(-2,2,r'$this\ is\ the\ text$',fontdict={'size':'24','color':'b'})
plt.show()

  • 30
    点赞
  • 139
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值