2021.06.29【R语言】丨png转pdf批量生成
摘要
接到一个特别要求,客户想把结果里的png图片全部转化成pdf。刚开始,这边销售想着结果图片不多,打算手动一个一个处理,直到她发现了16差异分组里,每个分组都有个kegg_map的文件夹...
环境与方法
R version 3.6.0 (2019-04-26)
环境包require(stringr)EBimage:install.packages('BiocManager')BiocManager::install('EBImage')
使用代码
library(EBimage) #读取png包require(stringr) #字符串判断包first_category_name = list.files("all_png") #遍历一级文件内二级文件名dir = paste("all_png/",first_category_name,sep="")#生成二级目录路径n = length(dir)for(i in 1:n){ #循环每个二级目录,寻找png文件sub2_dir = paste(dir[i],"/pathway/kegg_map",sep="") #我这里二级目录是差异分组,每个文件里面都有相同的子目录路径,因此我直接指定路径位置。kegg_map_dir = list.files(sub2_dir) #读取指定路径所有文件名#print(sub2_dir),测试路径书写是否正确o = length(kegg_map_dir) #循环次数等于文件数if(o != 0){ #跳过空文件夹for(k in 1:o){if(str_detect(kegg_map_dir[k],".png")){ #匹配后缀.png文件#print(kegg_map_dir[k]) #输出png文件名PNG_file = paste(sub2_dir,kegg_map_dir[k],sep="/") #打印完整路径#print(PNG_file) #测试路径书写是否正确PDF_file = gsub(".png",".pdf",PNG_file) #生成对应pdf文件名,只需修改后缀pdf(PDF_file) #生成pdf文件img = readImage(PNG_file) #读取png文件display(img, method="raster") #生成图像dev.off() #关闭pdf}}}}
结果展示
文件展示
内容展示
内容基本一致,像素大小我就没有细看了。
总结
这个脚本的灵活性很大,如果你的png在各级目录中都有,那么可以添加for循环,不断往子目录挖。如果只是某些文件夹里有,那么就可以像我那样遍历1级目录后直接指定目标路径进行处理。
2021.06.29【R语言】丨png转pdf批量生成相关推荐
- R语言可视化绘制及PDF使用字体参数列表:查看字体列表、可视化绘制图像中的字体参数列表、字体示例并写入pdf
R语言可视化绘制及PDF使用字体参数列表:查看字体列表.可视化绘制图像中的字体参数列表.字体示例并写入pdf 目录 R语言可视化绘制及PDF使用字体参数列表:查看字体列表.可视化绘制图像中的字体参数列 ...
- 三线表是什么?R语言使用table1包绘制(生成)三线表、构建不分层的三线表
三线表是什么?R语言使用table1包绘制(生成)三线表.构建不分层的三线表 目录
- R语言使用table1包绘制(生成)三线表、使用单变量分列构建三线表、编写自定义函数在三线表中添加p值
R语言使用table1包绘制(生成)三线表.使用单变量分列构建三线表.编写自定义函数在三线表中添加p值 目录
- R语言使用table1包绘制(生成)三线表、使用单变量分列构建三线表、设置transpose参数转置三线表、变量作为列,子组(strata)作为行
R语言使用table1包绘制(生成)三线表.使用单变量分列构建三线表.设置transpose参数转置三线表.变量作为列,子组(strata)作为行 目录
- R语言使用table1包绘制(生成)三线表、使用单变量分列构建三线表、自定义overall的标签名称
R语言使用table1包绘制(生成)三线表.使用单变量分列构建三线表.自定义overall的标签名称 目录
- R语言使用table1包绘制(生成)三线表、使用单变量分列构建三线表、为指定变量添加单位信息、自定义overall的标签名称
R语言使用table1包绘制(生成)三线表.使用单变量分列构建三线表.为指定变量添加单位信息.自定义overall的标签名称 目录
- R语言使用table1包绘制(生成)三线表、使用单变量分列构建三线表、编写自定义三线表结构(将因子变量细粒度化重新构建三线图)、为不同的变量显示不同的统计信息
R语言使用table1包绘制(生成)三线表.使用单变量分列构建三线表.编写自定义三线表结构(将因子变量细粒度化重新构建三线图).为不同的变量显示不同的统计信息 目录
- 三线表是什么?R语言使用table1包绘制(生成)三线表、使用单变量分列构建三线表、通过topclass参数自定义三线表表格的显示形式(显示为类似斑马线、并将所有列居中,包括包含行标签的第一列)
三线表是什么?R语言使用table1包绘制(生成)三线表.使用单变量分列构建三线表.通过topclass参数自定义三线表表格的显示形式(显示为类似斑马线.并将所有列居中,包括包含行标签的第一列) 目录
- 三线表是什么?R语言使用table1包绘制(生成)三线表、使用单变量分列构建三线表、编写自定义三线表结构(将因子变量细粒度化重新构建三线图)、编写自定义函数在三线表中添加p值
三线表是什么?R语言使用table1包绘制(生成)三线表.使用单变量分列构建三线表.编写自定义三线表结构(将因子变量细粒度化重新构建三线图).编写自定义函数在三线表中添加p值 目录
最新文章
- 2019.7.9 校内测试题 史密斯数
- python3多线程第三方库_Python之多线程爬虫抓取网页图片的示例代码
- 122. Leetcode 647. 回文子串 (动态规划-子序列问题)
- ALV标准范例Demo汇总
- Eclipse控制台Console使用说明
- [Usaco2007 Dec]宝石手镯[01背包][水]
- .NetCore中EFCore for MySql整理(二)
- 自考那些事儿(九):再次学操作系统
- php俄语包,俄语资源汇总 - 俄语 | Russian | Pусский - 声同小语种论坛 - Powered by phpwind...
- python对电影进行预测评分_TMDb电影数据分析 电影评分预测
- mysql驱动5.1_mysql jdbc 驱动 5.1.26 官方最新版
- 分享最新win7旗舰版/专业版企业版激活密钥和激活方法哦
- python中汉字如何转拼音?(PyPinyin 的基础用法)
- 城市区号+mysql_中国城市区号脚本-mysql
- 删库跑路?我劝你不要这样。
- Java算法之 循序搜寻法
- linux断电并重启命令,Linux基本操作:关机 重启
- 成都中忻嘉业:提高抖音短视频播放量的三个小技巧
- B站下载姿势合集——亲测
- Python中ASCII转十六进制、C中BCD转十进制、十六进制学习记录