用R高清绘图:分辨率600DPI-1200DPI

2010-12-03 12:28 · zjlcas

绘图是R的重要功能之一,很多学术期刊在投稿时推荐用eps等矢量图形。但是也有些期刊希望作者能提供一定分辨率的栅格图。TIFF和JPG以及GIF是最常见的栅格图的种类。

 

用R高清绘图600DPI-1200DPI
张金龙
jinlongzhang01@gmail.com
 
绘图是R的重要功能之一,很多学术期刊在投稿时推荐用eps等矢量图形。但是也有些期刊希望作者能提供一定分辨率的栅格图。TIFF和JPG以及GIF是最常见的栅格图的种类。栅格图的分辨率常用dpi表示,dpi表示每英寸拥有的像素数量,R保存的图片,默认为72dpi,这样的图形很小。但是要生成高清的图形,一般要在600甚至更高。如何用R生成类似的高清图形?
 
本文以Windows XP为例,在其他操作系统的操作与之类似,或更为简单。
 
绘制高分辨率的图形,在R中要用到bitmap函数,bitmap通过调用ghostscript软件绘图。所以先需要安装Ghostscript软件。
 
下载地址为 
https://pages.cs.wisc.edu/~ghost/ 
安装默认路径为 C:Program Filesgs  ,之后,需要为该软件设置启动路径,保证在console中可以调用。
需要做如下设置:
在 我的电脑>属性>高级>环境变量>系统变量>path>编辑,在变量值一项的最后面,加上  “C:Program Filesgsgs8.71bin;”(注意,随着Ghostscript的版本不同, bin子目录所在的文件夹名称不同,注意根据版本调整。核心问题是找到 gswin32c.exe 所在的bin文件夹,并将这个文件夹设置为启动路经。)
图 1 设定Ghostscript的启动路径
 
为了测验安装是否成功,可以在 开始>运行>输入"cmd"
然后输入 gswin32c
如果提示成功进入了该软件,那么表明配置成功。
 
下面就可以尝试用R绘制高清图了。
举例,编写如下R代码。
bitmap(file = "test1.jpeg", type = "jpeg", res = 1200)
plot(1:22, pch = 1:22, cex = 1:3, col = 1:5)
dev.off()
getwd()
则在最后一行显示的位置生成了名为 test1.jpeg的高清文件。更多的设置详见 bitmap的帮助文件。
 
关键词: