高质量保存图片

  • 引言
    • 问题描述
    • 失败案例
    • 文章结构
  • 四种不同的角度介绍
    • 1、PS转存
      • 实现方法介绍
      • PS在学术论文中的使用
    • 2、R语言输出方法
      • 内置输出函数
      • R语言函数包输出(ggplot2)
      • R语言手动转存
    • 3、 Adobe Acrobat X Pro
      • pdf格式图片插入word
      • word打印高质量pdf
    • 4、word 的操作
  • 总结

引言

问题描述

写此文,仅为纪念写论文时那些掉帧的图片。作为一个单纯想毕业的论文小白,对图片的要求也不是很高,仅仅是想让图片看起来不那么模糊。关键信息不被覆盖而已。但是就是那么一点需求都不能满足我。不过最终,历经坎坷也是找到了解决方法。本文从R语言、word、pdf三个方面来讲述我踩过的坑。

失败案例

最为本科统计学的专业的我,本次论文作图软件使用的是R语言中的ggplot2包中的函数。像保存图片以前也经常干,就是做出图片——调整大小确保信息展示全面——保存出去(习惯100%jpg)——插入word——转存pdf(最终要求word省略这一步)。但是唯独这次毕业设计中的图片显得异常那个模糊,连字母都区分不出。当然毋庸置疑也在一次给老师的审稿中被指了出来。几次百度后仍然不行的我,自然是先找找原因嘛。
总结一下几条:
1、这次拼图严重至少都是两张拼起来的
2、在保存之前都被放大到全屏
3、每张图方法太多导致信息过多
有了着几条自认为的问题,就有了方案,首先拼图和信息量的问题是不能妥协的。想了想放大应该也不能妥协。只能从图像处理、转存格式、专业处理软件来入手解决

文章结构

图片分为矢量图和像素啥的。好吧,我摊牌我不是很懂。所以我从技术层面来寻找专业的图片保存方式。本文从PS、R语言、PDF打印机、word这四个方面讨论高质量图片的保存方式。

四种不同的角度介绍

1、PS转存

实现方法介绍

从方法上PS可以说是非常好了,这也是一个学软件的小伙伴发现的,操作简单把图片导入PS,转存出高像素的图片即可(电脑没装PS这里就不为小伙伴演示了)。一般的图片在转发上传或者插入时都会被压缩,但是被PS转存的图片则不会,我当时发给小伙伴的图片时358k,但是她发给我的是1.1M,我看到大小时,心理就感觉可以了。不过问题来了,写论文时可以使用PS么,不会被查出学术不端么。

PS在学术论文中的使用

虽说只是用PS提高了像素质量,但是还是用PS对图片进行处理了。对于我这个小白心理有的只是恐慌。于是接下来就去问了度娘两件事。
1、使用PS做什么会被认定学术不端。
2、如何鉴别图片是否PS过。
对于第一件事说法不一,这里就不一一列举了。对于第二件事,正规期刊我不知道,但对于我们来说,只需要把图片用记事本打开就可知道图片的基本信息的。
下面上图:

可以看到这张图片是R语言输出保存的图片。
毕竟我是风险厌恶的,对于明显的红线要远离,对于这个PS方法pass掉了被我。

2、R语言输出方法

因为我用的不是rstudio,下面的方法都是基于R语言原始的平台的。

内置输出函数

R语言内置的输出函数有很多png、jpeg、pdf等等,这些函数的好处是可以直接把做好的图片按着指定的格式存入指定的文件夹,虽然有控制高宽的参数,但是使用这些函数转存不能直观控制图片大小,在这里就不一一介绍了。只是把函数的参数和使用格式贴在下面。png函数为例子:

function (filename = "Rplot%03d.png", width = 480, height = 480, units = "px", pointsize = 12, bg = "white", res = NA, family = "sans", restoreConsole = TRUE, type = c("windows", "cairo", "cairo-png"), antialias = c("default", "none", "cleartype", "gray", "subpixel"))

注意在使用函数时应该遵循一下格式:

x = 1:5
y = 6:10
png(filename = "Rplot%03d.png")
plot(x,y)
dev.off()

只有dev.off()结尾才可以把图片保存出去。

R语言函数包输出(ggplot2)

首先要安装这个包install.packages("ggplot2"),然后是载入函数包:library("ggplot2").做好准备工作下面就介绍主角函数:savePlot。按照祖传惯例,贴出savePlot函数的参数:

function (filename = "Rplot", type = c("wmf", "emf", "png", "jpg", "jpeg", "bmp", "tif", "tiff", "ps", "eps", "pdf"), device = dev.cur(), restoreConsole = TRUE)

先介绍函数的基本参数,filename是保存图片的名称,type是保存图片的类型看到可以支持多种类型,当然一般的这两个参数就可以保存图片了。用到更多使用者自查帮助文档。这个函数的好处比于内置的保存函数有点在于众多的格式类型一个函数可以操作。但是保存效果依然不是很满意。

R语言手动转存

R语言在作图后是自带保存功能哒,下面是具体操作,注意只有在做出图来才可以保存哦
这个是我一般会使用的方法,先说一下优点,这种方法可以直观调节图片大小,保存时和调节的尺寸一致。但是这次效果不是很好,各种格式都试过了。仍然会出现掉帧的现象。只有pdf的效果最好,接下来介绍pdf端的操作。

3、 Adobe Acrobat X Pro

Adobe Acrobat X Pro这是我经常用的一款pdf阅读器。其具备打印机功能,当然是打印成pdf的格式,在打印网页时比较方便还可以打印高质量pdf,在部分主要介绍pdf格式和word的交互。

pdf格式图片插入word

1、直接插入
直接插入显示错误此处不插图片
2、插入对象
插入对象可行但是质量不如直接插入图片
3、转成图片在插入
可以先把图片在Adobe Acrobat X Pro中另存为图片在插入word,效果不差,但是一般,也不是很满意。

word打印高质量pdf

进行如下操作,简单描述直接上图。使用的是word2019和Adobe Acrobat X Pro,打开打印机——打开打印机属性——选择默认设置——选择高质量打印。

4、word 的操作

没想到最后问题的解决在word这,我也就把word
用来压轴了,word在进行图片插入时会默认压缩图片,可以通过更改word的默认设置来提高图片的插入质量,避免失帧。直接上操作。
开始——选择——高级
选择不压缩文件的图像,高保真,打对勾,然后在插入图片,效果就会很大程度上好很多,起码放大不会模糊。

总结

本文总结了这两天踩过的坑,希望小伙伴不要再入坑,毕业加油!!!

R语言入门——高质量保存图片(想毕业咋就那么难!!!)相关推荐

  1. r语言 tunerf函数_R语言 | 一网打尽高质量统计分析与机器学习包

    原标题:R语言 | 一网打尽高质量统计分析与机器学习包 146+72本期刊<SCI期刊分析+选刊网站>免费领 解螺旋公众号·陪伴你科研的第2232天 常用统计方法包+机器学习包(名称.简介 ...

  2. 【万字长文】R语言入门学习路线与资源汇总

    本篇推文就不介绍为什么需要学R了,你能打开这篇文章,说明你有学习R的想法或者正在学习R的路上. 今天简单介绍下R语言的学习路线以及R学习资源汇总. 下面涉及到的R语言书籍我打包了PDF文件,有需要的在 ...

  3. R语言入门4---R语言流程控制

    ​ 流程控制语句在任何语言中都是非常重要的,通过流程控制语句编程者能够根据业务逻辑在程序中设计合理的循环.分支,实现程序各种各样强大的功能.一般实现任一算法的控制结构都可以分为顺序结构.分支结构.循环 ...

  4. R语言入门——常用函数50个

    R语言函数入门50个基本函数 0引言 1.入门准备操作及函数 1.1R版本介绍以及IDE的选择 1.2IDE及其常用的快捷键 2.空间操作以及纠错函数 2.1 ? .??.help.demo.exam ...

  5. 《R语言入门与实践》学习笔记四

    第四天任务: 完成项目玩扑克牌后1/2,并通过项目学会以下技能: 1)从一个数据集中抽取个别数据值. 2)在一个数据集中改变个别数据的取值. 3)编写逻辑测试程序. 4)使用R的缺失值符号NA. -- ...

  6. (一)R语言入门指南——数据分析的第一步

    注:本博客旨在分享个人学习心得,有不规范之处请多多包涵! 目录 R语言 数值与逻辑运算符 变量类型与赋值 逻辑判定与循环 结束语 R语言 简单来说,R语言是一个免费开源.数据分析和可视化功能强大的编程 ...

  7. <<R语言入门与实践>>读书笔记

    这是一个java小码农的跨界试探,如果你对R感兴趣可以买本R语言入门与实践,因为这里只记录了本人觉得有用的基本知识点.如果你只是看个乐呵,祝你有所收获. 序 数据分析具备三个属性 可再现性 自动化 沟 ...

  8. r语言x c(-1 -2),【软件】R语言入门之向量

    "R语言入门开篇,向量(vector)相关知识的介绍" R语言是一款优秀统计学编程语言,本文介绍R语言的几个重要命令,以及R语言中非常重要的一种数据结构-向量(Vector)的相关 ...

  9. R语言入门——猜数小游戏

    R语言入门--猜数小游戏 题目介绍 使用代码(2种方法) 运行结果 题目介绍 设计一个猜数字的游戏:计算机随机生成一个1~100 之间的整数,然后由用户猜测所产生的随机数.根据用户猜测的情况给出不同提 ...

最新文章

  1. ASP.NET 初级开发成员面试题部分面试题
  2. java实验七输入输出流_实验六_Java的输入输出流
  3. C++new和delete
  4. 动态条形图(RunBargraph)用于数据展示
  5. IMAX影厅专候天神下凡 巨幕电影2010年观影指南
  6. C语言不挂科之我爱谭浩强——选择填空拿满分(附例题答案和知识点详解)
  7. 微服务升级_SpringCloud Alibaba工作笔记0001---新一代网关spring gateway和zuul的关系说明
  8. 如何使用虚拟实验室建设思科IPS***防御课程的实验环境
  9. 项目部署到自己的IIS上
  10. tiledmap 图块属性_TiledMap地图使用
  11. 关于Sentaurus的日常(二)(Carrier Transport Models)
  12. 我国数学如何面对西方数学?
  13. 国外博士论文下载网址
  14. 学习日志之synthesis and optimization(4)——banding and sharing
  15. 图书出版的一些步骤和程序
  16. 钱包终局之战:无私钥的未来
  17. 小程序实现实名、支付及签约
  18. C65升级与补丁 V25->V43DIY全程
  19. (Fabric 学习六)Fabric2.0 私有数据 使用marbles官方示例
  20. 解决Invalid HTTP_HOST header: ‘xxx.xx.xxx.xxx:80‘. You may need to add ‘xxx.xx‘ to ALLOWED_HOSTS问题

热门文章

  1. 深度学习之迁移学习介绍与使用
  2. 美团动态线程池实践思路开源项目(DynamicTp),线程池源码解析及通知告警篇
  3. TOM企业邮箱注册流程是什么,如何开通邮箱
  4. PostgreSQL之外键约束
  5. 后羿采集器怎么导出数据_后羿SEO:如何用后羿采集器查收录?(附详细步骤图)...
  6. 外包 (outsourcing) - 劳务派遣 (labor dispatching)
  7. shell中各种括号的作用详解()、(())、[]、[[]]、{}(推荐)
  8. 采用Iframe解决微信图片防盗链‘此图片来自微信公众平台未经允许不可引用’问题
  9. 十三、JavaScript ajax请求
  10. 以史为镜,认知计算机操作系统