- 基础用法
import matplotlib.pyplot as plt
import numpy as np
1.画出简单的直线图
x = np.linspace(-3,3,50)
y = 2*x + 1
plt.plot(x,y)
plt.show()
2.显示多个figure与多线段figure以及线段个性设置
y1 = 2*x + 1
y2 = x**2
plt.figure(num = 3) # num参数为figure的序号
plt.plot()
plt.figure(figsize = (10,5)) # figsize设置长宽
plt.plot(x,y1,color = 'red',linewith = 1.0,linestyle = '--')
plt.plot(x,y2) # 两个线段显示在一个figure中
plt.show()
* linewith为线宽,color为线的颜色,linestyle = '--’设置虚线
1.设置x,y轴坐标范围
plt.xlim((-1,2))
plt.ylim((-2,3))
2.替换坐标轴角标
new_ticks = np.linspace(-1,2,5)
plt.xticks(new_ticks) # 设置x轴角标
plt.yticks([-2,-1.8,-1,1.22,3,],
['really bad','bad','normal','good','relly good']) # 与数值显示为字体一一对应
3.设置坐标轴注释
plt.xlabel('I am x')
plt.ylabel('I am y')
4.设置坐标位置
#gca = 'get current axis'
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_postion('left') # 将y轴设置为左边框
ax.spines['bottom'].set_position(('data',0))
ax.spines['left'].set_position(('data',0))
l1, = plt.plot(x,y2,color = 'red',linewidth=1.0,linestyle='--',label = 'down')
l2, = plt.plot(x,y1,label = 'up')
plt.legend(handles = [l1,l2],labels =['aaa','bbb'],loc = 'best')
plt.show()
* 为了方便起见可以直接使用以下形式
#plt.plot(x,y2,color = 'red',linewidth=1.0,linestyle='--',label = 'down')
#plt.plot(x,y1,label = 'up')
#plt.legend()
#plt.show()
Detail:
# 在plot中线条设置中添加label以及图例的名字,之后调用legend方法才会显示
# loc 默认为best可以设置为upper right等
# matplotlib中plt.plot返回的是直线对象,若把其当作变量需要加','
# handles可以控制显示哪些直线的图例,labels可以给图例重新命名