以下示例,为Jupyter Notebook转化而来的Markdown,展示了PIL的基本使用方式,清晰明了。
import matplotlib.pyplot as plt
import numpy as np
#显示matplotlib生成的图形
%matplotlib inline
绘制简单的函数图像
plot绘制折线图,show显示图像。
x = np.linspace(-1,1,50) #等差数列
y = 2*x + 1
#传入x,y,通过plot()绘制出折线图
plt.plot(x,y)
#显示图形
plt.show()
x = np.linspace(-1,1,50)
y = x**2
plt.figure(figsize=(7,5))
plt.plot(x,y)
plt.show()
在同一张画布中绘制多个图像
可以在同一张画布中绘制图像,使用color标记颜色,使用linewidth标记线宽。
plt.figure(figsize=(5,5))
x = np.linspace(-1,1,50)
y1 = 2*x + 1
y2 = 4*x**2 - 2
line1 = plt.plot(x,y1,color='red', linewidth=1)
line2 = plt.plot(x,y2,color='green',linewidth=2)
plt.show()
设置图像信息
通过legend设置图例,通过xlim和ylim设置图像显示范围,通过xlabel和ylabel创建横轴和纵轴的标签。
l1, = plt.plot(x,y1,color='red',linewidth=1)
l2, = plt.plot(x,y2,color='blue',linewidth=5)
plt.legend(handles=[l1,l2],labels=['num','rate'],loc='best')
plt.xlabel('x')
plt.ylabel('y')
plt.xlim((-1,1)) #x轴只截取一段进行显示
plt.ylim((-1,1)) #y轴只截取一段进行显示
plt.xlabel('x',fontsize=20)
plt.ylabel('y',fontsize=20)
plt.show()
绘制散点图
通过scatter绘制散点图。
dots1 =np.random.rand(50)
dots2 =np.random.rand(50)
plt.scatter(dots1,dots2,c='red',alpha=0.5) #c表示颜色,alpha表示透明度
plt.show()
绘制直方图
通过bar绘制直方图,通过text可以设置文本信息。
x = np.arange(10)
y = 2**x+10
plt.bar(x,y,facecolor='#9999ff',edgecolor='white')
for ax,ay in zip(x,y):
plt.text(ax,ay,'%.1f' % ay,ha='center',va='bottom')
plt.show()