Matplotlib資料視覺化——設定標註annotation
阿新 • • 發佈:2018-11-28
今天主要記錄annotation標註的用法
import matplotlib.pyplot as plt
import numpy as np
plt.rcParams['font.sans-serif']=['SimHei'] #用來正常顯示中文標籤
plt.rcParams['axes.unicode_minus']=False #用來正常顯示負號
x = np.linspace(-3,3,50)
y = 2*x+1
#繪製在同一個figure中
plt.figure(num=1, figsize=(8, 5),)
l1, = plt.plot(x, y,)
# 將上和右的樑刪除
ax = plt.gca()
ax.spines['right'].set_color('None')
ax.spines['top'].set_color('None')
# 設定x軸的樑和原點
ax.xaxis.set_ticks_position('bottom')
ax.spines['bottom'].set_position(('data', 0))
# 設定y軸的樑和原點
ax.yaxis.set_ticks_position('left')
ax.spines['left'].set_position(('data', 0))
x0 = 1
y0 = 2*x0+1
plt.scatter( x0, y0, s=100, color='r')# scatter方法顯示散點圖或某單一點
plt.plot([x0, x0], [y0, 0], 'k--', lw=2.5)
# method1
###################
plt.annotate(r'2x+1=3', xy=(x0, y0),xycoords='data', xytext=(+30, -30), textcoords='offset points',
fontsize=24, arrowprops=dict(arrowstyle='->', connectionstyle='arc3, rad=.2' ))
# method2
###################
plt.text(-3.2, 3, r'$This\ is\ new\ world.\ \mu\ \sigma_1\ \alpha_t$',
fontdict={'size': 16, 'color': 'r'})
plt.show()