1.关于坐标轴的设置
import numpy as np
import matplotlib.pyplot as plt
x=np.linspace(-3,3,50)
y1=x**2
y2=2*x+1
plt.figure()
plt.xlim((-1,2)) //设置范围
plt.ylim((-2,3))
plt.xlabel('i am x') //加标签
plt.ylabel('i am y')
new_ticks=np.linspace(-1,2,5) //修改坐标轴数值
print(new_ticks)
plt.xticks(new_ticks)
plt.yticks([-2,-1.8,-1,1.22,3,],
['really bad','bad','normal','good','really good']) //修改坐标轴为非数值
l1,=plt.plot(x,y1,label='up')
l2,=plt.plot(x,y2,color='red',linewidth=1.0,
linestyle='--',label='down')
#plt.legend() //添加描述
plt.legend(handles=[l1,l2,],labels=['aaa','bbb'],loc='best') //添加描述并修改,L1,L2后必须有逗号
plt.show()
2.添加标注的两种方法
import numpy as np
import matplotlib.pyplot as plt
x=np.linspace(-3,3,50)
y=x*2+1
plt.figure(num=1,figsize=(8,5))
plt.plot(x,y)
ax=plt.gca() 获得当前坐标轴
ax.spines['right'].set_color('none') 把上和右侧坐标轴线颜色去掉
ax.spines['top'].set_color('none')
ax.xaxis.set_ticks_position('bottom') 把底部和左边坐标值给x,y轴
ax.yaxis.set_ticks_position('left')
ax.spines['left'].set_position(('data',0))
ax.spines['bottom'].set_position(('data',0))
x0=1
y0=2*x0+1
plt.scatter(x0,y0,c='b',s=50) 画出点
plt.plot([x0,x0],[y0,0],'k--',lw=2.5) 画出虚线
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' ))
plt.text(-3.7,3,r'$this\ is\ a\ text.\ \mu\ \sigma_i\ \alpha_t$',
fontdict={'size':16,'color':'r'})
plt.show()
3.设置坐标值能见度
import numpy as np
import matplotlib.pyplot as plt
x=np.linspace(-3,3,50)
y=x*0.1
plt.figure()
plt.plot(x,y,linewidth=10)
plt.ylim(-2,2)
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['left'].set_position(('data',0))
ax.spines['bottom'].set_position(('data',0))
for label in ax.get_xticklabels()+ax.get_yticklabels():
label.set_fontsize(12)
label.set_bbox(dict(facecolor='white',edgecolor='none',alpha=0.7))
plt.show()