代碼實(shí)例- import matplotlib.pyplot as plt
- import matplotlib
- import numpy as np
- #解決中文亂碼問(wèn)題,,引入windows字體庫(kù)
- 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) 設(shè)置坐標(biāo)點(diǎn)
- #yticks = np.linspace(-6,8,14)
- #plt.yticks(yticks)
- plt.xlabel("x")
- plt.ylabel("y")
- #挪動(dòng)坐標(biāo)位置
- ax = plt.gca()
- #去掉邊框
- ax.spines['top'].set_color('none')
- ax.spines['right'].set_color('none')
- #移位置 設(shè)為原點(diǎn)相交
- 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))
- '''''
- 然后標(biāo)注出點(diǎn)(x0, y0)的位置信息. 用plt.plot([x0, x0,], [0, y0,], 'k--', linewidth=1.0)
- 畫(huà)出一條垂直于x軸的虛線
- '''
- x0 = 1
- y0 = 2*x0 + 1
- plt.plot([x0,x0,],[0,y0],'k--',linewidth=2.5)
- # set dot styles
- plt.scatter([x0, ], [y0, ], s=50, color='r') #在這點(diǎn)加個(gè)藍(lán)色的原點(diǎn) 原點(diǎn)大小50
- plt.title(u'Annotation 標(biāo)注',fontproperties=myfont)
- #標(biāo)注方式1: 使用 annotate 接下來(lái)我們就對(duì)(x0, y0)這個(gè)點(diǎn)進(jìn)行標(biāo)注.
- '''''
- 其中參數(shù)xycoords='data' 是說(shuō)基于數(shù)據(jù)的值來(lái)選位置, xytext=(+30, -30) 和
- textcoords='offset points' 對(duì)于標(biāo)注位置的描述 和 xy 偏差值, arrowprops是對(duì)圖中箭頭類(lèi)型的一些設(shè)置.
- '''
- plt.annotate(r'$2x+1=%s$' % y0, xy=(x0, y0), xycoords='data', xytext=(+30, -30),
- textcoords='offset points', fontsize=16,
- arrowprops=dict(arrowstyle='->', connectionstyle="arc3,rad=.2"))
- '''''
- 標(biāo)注方式2: 使用 text
- 其中-3.7, 3,是選取text的位置, 空格需要用到轉(zhuǎn)字符\ ,fontdict設(shè)置文本字體.
- '''
- plt.text(-3.7, 3, r'$.Annotation text ,、 \mu\ \sigma_i\ \alpha_t$',
- fontdict={'size': 16, 'color': 'r'})
-
- plt.show()
# 設(shè)置坐標(biāo)點(diǎn) plt.xlabel("x") plt.ylabel("y")
# 挪動(dòng)坐標(biāo)位置 ax = plt.gca() # 去掉邊框 ax.spines['top'].set_color('none') ax.spines['right'].set_color('none')
bias_dict.pop(item) ax.text(max(x), max(y), '{}={}\n{}={}\n{}={}'.format(list(bias_dict.keys())[0],list(bias_dict.values())[0],list(bias_dict.keys())[1],list(bias_dict.values())[1],list(bias_dict.keys())[2],list(bias_dict.values())[2]), fontdict=None,withdash=False)
# 移位置設(shè)為原點(diǎn)相交 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))
|