import numpy as np
import matplotlib
matplotlib.use(“TkAgg”)
import matplotlib.pyplot as plt
from matplotlib.collections import LineCollection
x=np.linspace(-1,1,50)
y1=3*x+1
y2=x**2
plt.figure(num=3,figsize=(8,6))
plt.xlim((-1,1))
plt.ylim((-2,4))
plt.xlabel(“I am x”)
plt.ylabel(“I am y”)
new_ticks=np.linspace(-1,2,5)
plt.xticks(new_ticks)
plt.yticks([-2,-1.8,-1,1.22,3],[r"
r
e
a
l
l
y
b
a
d
really\ bad
really bad",r"
b
a
d
bad
bad",r"
n
o
r
m
a
l
normal
normal",r"
g
o
o
d
good
good",r"
r
e
a
l
l
y
g
o
o
d
really\ good
really good"])
ax=plt.gca()
ax.spines[“right”].set_color(“none”)
ax.spines[“top”].set_color(“none”)
ax.xaxis.set_ticks_position(“bottom”)
ax.yaxis.set_ticks_position(“left”)
ax.spines[“bottom”].set_position((“data”,0))
ax.spines[“left”].set_position((“data”,0))
l1,=plt.plot(x,y2,color=“g”)
l2,=plt.plot(x,y1,linewidth=1.0,linestyle=’–’,color=‘r’)
x0=0.5
y0=3*x0+1
plt.scatter(x0,y0,s=100,color=“b”)
plt.plot([x0,x0],[y0,0],‘k–’,linewidth=1.5)
plt.annotate(r"3x+1=%s" % y0,xy=(x0,y0),xycoords=“data”,xytext=(+20,-10),textcoords=“offset points”,fontsize=30,arrowprops=dict(arrowstyle="->",connectionstyle=“arc3,rad=.4”)) #xycoords="data"表示坐标基于相关作图的数据
plt.legend(handles=[l1,],labels=[“aaa”,],loc=“best”)
plt.show()
加上下列语句后的作图:
plt.text(-1,2,"
T
h
i
s
i
s
s
o
m
e
t
e
x
t
.
μ
σ
i
α
i
This\ is\ some\ text.\ \mu\ \sigma_i\ \alpha_i
This is some text. μ σi αi",fontdict={“size”:16,“color”:“r”})#“-1,2” 表示文本所在的位置,"_“表示i在alpha的末端,”“未来识别空格,alpha前的”"可将其转为数学上的alpha