女神刘涛图片显示由浅入深用matplotlib方法
1说明:
1。1matplotlib的强大,一般只是知道它的数据可视化,在显示图片上一般人不知道还有其强大的一面。
1。2环境:
python3。8matplotlib3。2。0
1。3锻炼python思维和熟悉matplotlib作图。
1。4图片来源:今日头条正版免费图库,向女神刘涛,致敬,仅用于学习。
lt1。jpeg
lt2。jpeg
lt3。jpeg
lt4。jpeg
2读取一张图片:
2。1方法一:简洁法,代码一。importmatplotlib。pyplotasplt读取图片imgplt。imread(homexgjDesktopmatplotlibpiclt1。jpeg)将图片挂在plt的imshow上plt。imshow(img)再展示plt。show()
2。2方法二:有了方法一,谁还用方法二,作为了解,嘻嘻。代码二。importmatplotlib。imageasimgpltimportmatplotlib。pyplotaspltimgimgplt。imread(homexgjDesktopmatplotlibpiclt1。jpeg)plt。imshow(img)plt。show()
2。3图:
3多子图(224)显示:
3。1代码三:导入模块importmatplotlib。pyplotasplt读取图片img1plt。imread(homexgjDesktopmatplotlibpiclt1。jpeg)img2plt。imread(homexgjDesktopmatplotlibpiclt2。jpeg)img3plt。imread(homexgjDesktopmatplotlibpiclt3。jpeg)img4plt。imread(homexgjDesktopmatplotlibpiclt4。jpeg)定义画布plt。figure()定义子图、位置和显示图片序号plt。subplot(2,2,1)plt。imshow(img1)plt。subplot(2,2,2)plt。imshow(img2)plt。subplot(223)plt。imshow(img3)plt。subplot(224)plt。imshow(img4)展示图片plt。show()
3。2图:
3。3代码四:是对代码三进行优化。导入模块importmatplotlib。pyplotasplt定义画布plt。figure()读取图片img1plt。imread(homexgjDesktopmatplotlibpiclt1。jpeg)img2plt。imread(homexgjDesktopmatplotlibpiclt2。jpeg)img3plt。imread(homexgjDesktopmatplotlibpiclt3。jpeg)img4plt。imread(homexgjDesktopmatplotlibpiclt4。jpeg)定义列表piclist〔img1,img2,img3,img4〕读取图片列表positionpic〔221,222,223,224〕位置列表推导式foriinrange(4):plt。subplot(positionpic〔i〕)plt。imshow(piclist〔i〕)图片展示plt。show()
4高级图片动画:
4。1代码五:导入模块importmatplotlib。pyplotaspltimportrandomimportmatplotlib。animationasanimation定义画布和背景颜色为黑色k,注意bblue,不是blackfigplt。figure(facecolork)axplt。gca()读取图片Xplt。imread(homexgjDesktopmatplotlibpiclt1。jpeg)Yplt。imread(homexgjDesktopmatplotlibpiclt2。jpeg)Zplt。imread(homexgjDesktopmatplotlibpiclt3。jpeg)Mplt。imread(homexgjDesktopmatplotlibpiclt4。jpeg)定义列表piclist〔X,Y,Z,M〕初始化definit():returnX,Y,Z,M更新defupdate(i):随机选取图片列表prandom。choice(piclist)展示plt。imshow(p)去除刻度plt。xticks(〔〕)plt。yticks(〔〕)returnX,Y,Z,M动画anianimation。FuncAnimation(fig,update,range(10),initfuncinit,interval30)展示plt。show()
4。2效果图:
5再高级一点图片动画:
5。1代码六:importmatplotlib。pyplotaspltimportrandomimportmatplotlib。animationasanimationfigplt。figure(facecolork)axplt。gca()读取图片Xplt。imread(homexgjDesktopmatplotlibpiclt1。jpeg)Yplt。imread(homexgjDesktopmatplotlibpiclt2。jpeg)Zplt。imread(homexgjDesktopmatplotlibpiclt3。jpeg)Mplt。imread(homexgjDesktopmatplotlibpiclt4。jpeg)piclist〔X,Y,Z,M〕positionpic〔221,222,223,224〕definit():returnX,Y,Z,Mdefupdate(i):prandom。choice(piclist)nrandom。choice(positionpic)plt。subplot(n)报错,小bugplt。imshow(p)plt。xticks(〔〕)plt。yticks(〔〕)returnX,Y,Z,Manianimation。FuncAnimation(fig,update,range(10),initfuncinit,interval30)plt。show()
5。2效果图:
随机图