300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > matplotlib 设置标注方向_Python 使用matplotlib画图添加标注 及移动坐标轴位置

matplotlib 设置标注方向_Python 使用matplotlib画图添加标注 及移动坐标轴位置

时间:2021-01-26 02:42:18

相关推荐

matplotlib 设置标注方向_Python 使用matplotlib画图添加标注 及移动坐标轴位置

importmatplotlib.pyplotasplt

importmatplotlib

importnumpyasnp

#解决中文乱码问题,引入windows字体库

myfont=matplotlib.font_manager.FontProperties(fname=r'C:/Windows/Fonts/msyh.ttf')

x=np.linspace(-3,3,50)

y=2*x+1

plt.plot(x,y)

plt.figure(1,figsize=(8,5))

xticks=np.linspace(-3,3,11)

#plt.xticks(xticks)设置坐标点

#yticks=np.linspace(-6,8,14)

#plt.yticks(yticks)

plt.xlabel("x")

plt.ylabel("y")

#挪动坐标位置

ax=plt.gca()

#去掉边框

ax.spines['top'].set_color('none')

ax.spines['right'].set_color('none')

#移位置设为原点相交

ax.xaxis.set_ticks_position('bottom')

ax.spines['bottom'].set_position(('data',0))

ax.yaxis.set_ticks_position('left')

ax.spines['left'].set_position(('data',0))

'''''

然后标注出点(x0,y0)的位置信息.用plt.plot([x0,x0,],[0,y0,],'k--',linewidth=1.0)

画出一条垂直于x轴的虚线

'''

x0=1

y0=2*x0+1

plt.plot([x0,x0,],[0,y0],'k--',linewidth=2.5)

#setdotstyles

plt.scatter([x0,],[y0,],s=50,color='r')#在这点加个蓝色的原点原点大小50

plt.title(u'Annotation标注',fontproperties=myfont)

#标注方式1:使用annotate接下来我们就对(x0,y0)这个点进行标注.

'''''

其中参数xycoords='data'是说基于数据的值来选位置,xytext=(+30,-30)和

textcoords='offsetpoints'对于标注位置的描述和xy偏差值,arrowprops是对图中箭头类型的一些设置.

'''

plt.annotate(r'$2x+1=%s$'%y0,xy=(x0,y0),xycoords='data',xytext=(+30,-30),

textcoords='offsetpoints',fontsize=16,

arrowprops=dict(arrowstyle='->',connectionstyle="arc3,rad=.2"))

'''''

标注方式2:使用text

其中-3.7,3,是选取text的位置,空格需要用到转字符\,fontdict设置文本字体.

'''

plt.text(-3.7,3,r'$.Annotationtext、\mu\\sigma_i\\alpha_t$',

fontdict={'size':16,'color':'r'})

plt.show()

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。