【python学习】如何将所绘制的图(单张多张)保存到文件夹,并用绘制实时时间命名图片
python图片保存到文件夹
- 基本存储(plt.savefig())
- 创建文件夹并存储图片(if结构+OS模块)
- 批量绘制图片+批量存储(for循环)
- 图片/文件夹命名与所运行时间关联(datatime模块)
最近一直在做实验但在解决问题时总是兜兜转转又回到原点,因此只能记录一些零碎的知识,在此用学术的语言记录最为简单的知识。
下面以循序渐进的方式记录将图片保存到文件夹的过程,由需求促进代码进一步完善。在此以本人解决这个问题所思考的步骤记录下来,主要是经历了以下几个过程:
- 过程一:单纯实现将所绘制的图片保存到代码所在目录(plt.savefig())
- 过程二:我想创建一个文件夹存储所绘制的图片(if结构+OS模块)
- 过程三:我需要处理多张图片,能不能批量存储这些图片,并且每张图片的命名都不同(for循环)
- 过程四:我想记录绘制这些图片的时间,并且最好就是图片名后面有时间(datatime模块)
总得来说,最后是实现批量绘制并存储多张以时间命名的图片在同一个文件夹中(当然也可以放在不同的文件夹)
基本存储(plt.savefig())
#基本存储
import matplotlib.pyplot as plt
x=[0,1,2,3,4,5]
y=[0,2,4,6,8,10]
plt.plot(x,y)#绘制图片
plt.savefig( 'exam.png')#存储图片时给图片命名,注意要放在plt.show()前
plt.show()
【输出结果】(会在代码所在目录直接存储图片)
【缺点】当输出的图片非常多时,逐一命名与存储既麻烦又会造成目录非常不好看
因此,下面可以基本想到要创建一个文件夹来存放图片
创建文件夹并存储图片(if结构+OS模块)
#存储图片同一个文件夹中
import matplotlib.pyplot as plt
import os#注意要输入OS模块
x=[0,1,2,3,4,5]
y=[0,2,4,6,8,10]
plt.plot(x,y)
# 指定图片保存路径
figure_save_path = "file_fig"
if not os.path.exists(figure_save_path):os.makedirs(figure_save_path) # 如果不存在目录figure_save_path,则创建
plt.savefig(os.path.join(figure_save_path , 'exam.png'))#第一个是指存储路径,第二个是图片名字
plt.show()
【输出结果】(会在代码所在目录创建一个名字为“file_fig”的文件夹,并存储名字为’exam.png’的图片)
【缺点】
这里的图片与文件夹均只是针对一张图片,一个文件夹,如果我的图片非常多,而且是通过循环来绘制的,那么此时可以考虑同样利用循环给每张图片逐一命名存储在同一个文件夹或是逐一存储在不同文件夹(主要是利用遍历列表,先将名字放在列表中,然后结合循环逐一赋予/使用)
批量绘制图片+批量存储(for循环)
#批量绘制图片+批量存储
import matplotlib.pyplot as plt
import os
for i in range(0,3,1):x=[i,1,2,3,4,5]y=[0,2,4,6,8,10]name_list=["one","two","three"]#先创建名字列表,可以是用在图片命名,也可以用在文件夹命名plt.plot(x,y)# 指定图片保存路径figure_save_path = "files_fig_many"#这里创建了一个文件夹,如果依次创建不同文件夹,可以用name_list[i]if not os.path.exists(figure_save_path):os.makedirs(figure_save_path) # 如果不存在目录figure_save_path,则创建plt.savefig(os.path.join(figure_save_path , name_list[i]))#分别命名图片plt.show()
【输出结果】(实现在代码所在文件夹创建一个名为”files_fig_many“的文件夹,里面存储了三张不同名字的图片)
这里图片的名字是事先建立了列表存起来的,如果对名字没有特别要求,可以考虑直接用数字列表会更方便
【可改进】
这里图片的命名可以考虑改进一下,一般时候我们会希望用时间记录输出结果,因此可以考虑给图片/文件夹名字加上实时的时间
图片/文件夹命名与所运行时间关联(datatime模块)
这里与实际运行时间关联主要是用到datatime模块,因此需要对前面的代码加上这个模块
#将图片存储在指定文件夹(附带创建文件夹)+用循环创建文件名
import matplotlib.pyplot as plt
import os
import datetime#注意要输入这个模块
for i in range(0,3,1):x=[i,1,2,3,4,5]y=[0,2,4,6,8,10]name_list=["one","two","three"]#先把图片名字存储成列表files_name=["file_1_","file_2_","file_3_"]#先把文件夹名字存储成列表plt.plot(x,y)mkfile_time = datetime.datetime.strftime(datetime.datetime.now(), '%Y%m%d%H%M%S')#这里是引用时间mkfile_time = files_name[i]+mkfile_time#注意这里在下面是用作文件夹名字的,里面也用了列表使每个文件夹的名字不一样# 指定图片保存路径figure_save_path = mkfile_time#给文件夹赋予名字if not os.path.exists(figure_save_path):os.makedirs(figure_save_path) # 如果不存在目录figure_save_path,则创建plt.savefig(os.path.join(figure_save_path , name_list[i]))#分别创建文件夹,分别储存命名图片plt.show()
【输出结果】(实现了创建三个名字各不相同且有实时时间的文件夹,且里面分别存储了一张图片)
这里只举了给文件夹名字加了时间的例子,如果想给图片名字加时间,方法也是一样的
#将图片存储在指定文件夹(附带创建文件夹)+用循环创建文件名+如何将多幅图片储存在同一个文件夹
import matplotlib.pyplot as plt
import os
import datetime
for i in range(0,3,1):x=[i,1,2,3,4,5]y=[0,2,4,6,8,10]name_list=["one","two","three"]plt.plot(x,y)mkfile_time = datetime.datetime.strftime(datetime.datetime.now(), '%Y%m%d%H%M%S')# 指定图片保存路径figure_save_path = "exam"if not os.path.exists(figure_save_path):os.makedirs(figure_save_path) # 如果不存在目录figure_save_path,则创建plt.savefig(os.path.join(figure_save_path , name_list[i]+mkfile_time))#创建文件夹,储存有时间命名的多张图片plt.show()
【输出结果】(输出一个文件夹中存储着带有实时时间命名的多张图片)
记录结束
【python学习】如何将所绘制的图(单张多张)保存到文件夹,并用绘制实时时间命名图片相关推荐
- 【python学习】如何将所绘制的图(单张/多张)保存到文件夹,并用绘制实时时间命名图片
python图片保存到文件夹 基本存储(plt.savefig()) 创建文件夹并存储图片(if结构+OS模块) 批量绘制图片+批量存储(for循环) 图片/文件夹命名与所运行时间关联(datatim ...
- 【Python】批量对文件做downsample并且以指定名称保存到文件夹中
#实现了如下简单的功能 #1:从一个文件夹中将现有的图片的路径做成一个list #2:根据上述做出的list,生成一个目标对象的路径以及名称并保存为list #3:通过一个统一的操作,将现有的图片做了 ...
- 音视频开发(17)---RTSP再学习 -- 利用FFmpeg 将 rtsp 获取H264裸流并保存到文件中
RTSP再学习 -- 利用FFmpeg 将 rtsp 获取H264裸流并保存到文件中 https://blog.csdn.net/qq_29350001/article/details/7821426 ...
- 半个月爆肝,Python学习指南:学习方法、路径图、资料都备齐了!
1.6米长,八年Python使用经验,耗时半月,制作了这张Python学习路径图! 视频大纲: 自己的课代表 1.为什么学习python 00:43 2.python学习路径图和python备忘手册( ...
- 【Python教程】雨痕 的《Python学习笔记》(附脑图)
本文转自至:http://www.pythoner.com/148.html 近日,在某微博上看到有人推荐了这本作者是 雨痕 的<Python学习笔记>,从github上下载下来看了下,确 ...
- python笔记图片_【Python教程】雨痕 的《Python学习笔记》(附脑图)
更多 近日,在某微博上看到有人推荐了这本作者是 雨痕 的<Python学习笔记>,从github上下载下来看了下,确实很不错. 注意,这本学习笔记不适合Python新手学习. 从目录上看, ...
- python爬虫保存图片到指定文件夹_李亚涛:python抓取某房源户型图并自动保存到文件夹...
大家好,今天来给大家分享一下如何抓取某房产网站房源户型图的所有图片,而且自动以房源名称命名一个文件夹,把所有图片放到文件夹中. 大概的思路是: 1.获取网页源代码 2.获取图片地址与房源名称 3.在当 ...
- 李亚涛:python抓取某房源户型图并自动保存到文件夹
大家好,今天来给大家分享一下如何抓取某房产网站房源户型图的所有图片,而且自动以房源名称命名一个文件夹,把所有图片放到文件夹中. 大概的思路是: 1.获取网页源代码 2.获取图片地址与房源名称 3.在当 ...
- RTSP再学习 -- 利用FFmpeg 将 rtsp 获取H264裸流并保存到文件中
如需转载请注明出处:https://blog.csdn.net/qq_29350001/article/details/78214267 既然已经可以通过 RTSP 获取h264 裸流了.那么通过 F ...
最新文章
- python运行错误怎么查找_求助,python的二分法查找,按照视频上的代码写下来,结果运行错误...
- python图片旋转脚本_Python+OpenCV 实现图片无损旋转90°且无黑边
- php 年的第几天,收藏-php中某年第几天计算出日期年月日的代码
- .NET 6 中的七个 System.Text.Json 特性
- 状态机设计模式_设计模式-代理/状态机模式
- P3195 [HNOI2008]玩具装箱TOY DP+优化
- 计算两个经纬度之间的距离软件_小程序使用腾讯位置服务计算两地之间的距离(有源码)...
- Linux下安装gcc5.5
- Java多线程常用面试题(含答案,精心总结整理)
- Ubuntu安装Mysql5.7
- 极好用的c++ http server和client库
- 【小笔记】大数据量excel解析工具性能对比
- ln: creating hard link 问题
- SpotMicro 12自由度四足机器人制作(两套方案)
- Espresso Test 7: Idling resource
- Gluster管理命令的总结与归纳
- Micropython——关于通信I2C协议的应用和原理讲解
- 夏普电视android应用程序,教你解决夏普电视出现的“应用程序未安装”问题
- Learning Spatio-Temporal Transformer for Visual Tracking——精读笔记
- pmp-关键路径法之顺推和逆推