Gallery页面 中有上百幅缩略图,打开之后都有源程序。因此如果你需要绘制某种类型的图,可根据需要在这个页面中浏览/复制/粘贴/修改。
gallery 地址 http://matplotlib.sourceforge.net/gallery.html
例子1.
import numpy as np import matplotlib.pyplot as plt x = np.linspace(0, 10, 1000) #创建等差数列,起点、终点、个数 y = np.sin(x) z = np.cos(x**2) plt.figure(figsize=(8,4)) #创建Figure对象,指定长宽 plt.plot(x,y,label="$sin(x)$",color="red",linewidth=2) plt.plot(x,z,"b--",label="$cos(x^2)$") # $使用LaTex转换成数学公式,会降低速度 plt.xlabel("Time(s)") plt.ylabel("Volt") plt.title("PyPlot First Example") plt.ylim(-1.2,1.2) #设置y轴显示范围 plt.legend() plt.savefig('test.png', dpi=120) #保存图片,pdi设置图像分辨率,所以保存的图像是(8*120)*(4*120)大小的。 plt.show() #这里顺序有讲究,先显示后保存,图像就没有了,保存图像为空白。每次显示,似乎都有清空图像的感觉。结果:
例子2. 画散列点
a)
import matplotlib.pyplot as plt import numpy as np plt.plot(np.random.random(100), np.random.random(100), 'o') #无法单独指定颜色和大小 plt.show()
b)
import matplotlib.pyplot as plt import numpy as np x = np.random.random(100) y = np.random.random(100) #scatter(),可指定每个点的颜色和大小。 #s指定点的大小,c颜色,marker形状,alpha透明度,lw线宽,facecolor为'none'时散列点没有颜色填充 plt.scatter(x, y, s=x*1000, c=y, marker=(6,1), alpha=0.8, lw=2, facecolors='1') plt.xlim(0,1) plt.ylim(0,1) plt.show()
例子3. 图像。
import matplotlib.pyplot as plt import numpy as np img = plt.imread('Koala.jpg') plt.imshow(img)
显示出来的图像是反着的。如要正常显示,则需:a)
plt.imshow(img[::-1]) #反转图像数组的第0轴
plt.imshow(img,origin='lower')