全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
1449 2
2017-01-24
要特别强调的一点是,必须要使用 dev.off() 命令来告诉 R 我们已经完成绘图,否则我们的要保存的图像就不会出现

1、导出 PDF 文件


PDF 是一个矢量文件格式。矢量文件在作为输出时是比较受欢迎的,因为它可以被任意地缩放而不会失真(像素化),一个向量文件的大小通常比相应的位图文件小,除非它包含了太多的对象(比如一幅散点图中有成千上万的样本点,那么它的矢量图就会很大,位图则相对较小)。
复制代码
默认情况下,导出的 PDF 文件为 7x7 英寸大,每一幅图都被放在一个新页中。我们可以通过如下方式来改变大小:
复制代码
如果我们想直接用一些矢量图绘制工具例如 Inkscape 或 Illustrator 来处理这些矢量文件,那么有可能会出现数据点呈字符形式而非原本的圆形或方形等,如下方法可以避免这一问题:
复制代码

2、导出 SVG 文件

SVG 是另一种矢量格式。 svg()函数的默认设置并不允许将多页图像输出为单一文件,这是因为大多数 SVG 浏览器都不支持多页的 SVG 文件。如果你想输出多页的 SVG,详情可见本节的 PNG 部分。
复制代码
相比于 PDF 文件,SVG 文件更易于矢量处理。


3、导出 PNG/TIFF 文件



PNG 和 TIFF 是位图(或称光栅图像)的格式。在将它们放大后,我们能够清楚的分辨出其中的像素点。


复制代码

在默认的情况下,这类图像的输出大小为 480x480 素,分辨率为 72 dpi(6.66x6.66 英寸).

增加分辨率将会放大文本与图像元素的大小,只是因为画布元素的大小只与图像的物理大小有关,而与图像的像素大小无关。例如一个 12 像素点的字符原本高度为 12/72 = 1/6 英寸,在分辨率为 72dpi 的条件下,它共包含 12 个像素点,而当分辨率放大为 120dpi 时,它就含有 20 个像素点了。

下列操作将会创建一个大小为 480x240 像素的图像,其分辨率为 120dpi,实际大小相当于 4x2 英寸。

复制代码

如果我们想要输出多幅图像,那么我们就必须要执行一个新的png()命令,或是将%d置于文件名中:

复制代码

上述操作将会生成 plot-1.png, plot2.png 等一系列文件。

以上内容转自 数析学院,原文后续还有涉及到如何导出文件至不支持 PDF 的程序(MS Office)、ggplot、由屏幕保存图像等内容,有需要的同学可以直接查看原文



二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2017-1-24 14:27:05
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2017-1-24 15:30:13
提示: 作者被禁止或删除 内容自动屏蔽
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群