R语言绘图高质量输出

  R语言通过支持Cairo矢量图形处理的类库,可以创建高质量的矢量图形(PDF,PostScript,SVG) 和 位图(PNG,JPEG, TIFF),同时支持在后台程序中高质量渲染。在ggplot2中,图片输出经过Cairo包处理后,输出个效果更好,可以输出成PDF格式,PDF格式体积小,同时可以储存为其他任何格式,随后再将PDF储存为eps格式并在Photoshop中打开做最终的调整,例如调整比例、色彩空间和dpi(一般杂志和出版社要求dpi=300以上)等。额外需要注意的是ggplot2中的字体大小问题,在cookbook-r一书中指出,在ggplot2中绝大多数情况下,size的大小以mm记,详细的讨论也可以参考stackover的讨论,而在theme()中对element_text()里的size进行调整,此时的size是以磅值(points, pts)来进行表示。
  下面以3种ggplot2种常用的图片输出方式,输出一幅主标题为20pts,横纵坐标标题为15pts,长为80mm(3.15in),宽为60mm(2.36in)的图为例。

require(ggplot2)
require(Cairo)
ggplot() +
  geom_text(aes(x = 16, y = 16), label = "ABC", size = 11.28) + #尺寸为11.28mm,即为32磅
  geom_text(aes(x = 16, y = 14.5), label = "ABC", size = 32) + #尺寸为32mm
  labs( x = "x axis", y = "y axis") +
  ylim( c(14, 16.5)) +
  xlim( c(15.75, 16.25)) +
  theme(
    axis.title.x = element_text(size = 32),#尺寸为32磅
    axis.title.y = element_text(size = 32))#尺寸为32磅
x <- seq(-4,4, length.out = 1000)
y <-dnorm(x)
data <- data.frame(x, y)
#用Cairo包输出
require(Cairo)
CairoPDF("plot1.pdf", 3.15, 3.15) #单位为英寸
ggplot(data, aes(x = x, y = y)) + geom_line(size = 1) +
  theme_bw()
dev.off() #关闭图像设备,同时储存图片

plot2 <- ggplot(data, aes(x = x, y = y)) + geom_line(size = 1) +
  theme_bw()
#用ggsave输出,默认即以用Cairo包进行抗锯齿处理
ggsave("plot2.pdf", plot2, width = 3.15, height = 3.15)
#RStudio输出

转自博文:http://www.cellyse.com/how_to_use_gggplot2_part2/

时间: 2024-11-07 11:46:39

R语言绘图高质量输出的相关文章

R语言——绘图函数深入学习

利用R自带数据集 通过data()函数可以查看R自带数据集. > data() 返回以下结果,每一条记录都是一个数据,键入相应的数据名称可以查看具体信息. Data sets in package ¡®datasets¡¯: AirPassengers Monthly Airline Passenger Numbers 1949-1960 BJsales Sales Data with Leading Indicator BJsales.lead (BJsales) Sales Data wit

[R语言绘图]绘图样式设置(符号、线条、颜色、文本属性)

设置图像样式有两种方法,一种是全局修改,一种只针对一幅图片有效. 全局修改 a<-c(1:10) #全局修改 old_par<-par(no.readonly=TRUE) #记录默认样式到变量old_par中 par(lty=2,pch=17) #设置线型lty=2虚线,pch=17实心三角形,键值对的方式进行设置 #第一幅图,已经和默认样式不一样了 b<-rnorm(10) plot(a,b,type='b') #第二幅图,和第一幅图样式一样 b<-rnorm(10) plot(

R语言绘图——Graphics包

先给出一下参考说明: R绘图 http://www.cnblogs.com/holbrook/archive/2013/05/13/3075777.html R语言中颜色对照表 http://wenku.baidu.com/link?url=PnCsIjv3e_OGw2COt4AEo3_tHTisOYoHLGf9bf-jjzkfGIJhFZpEQrS6CAELUypnR82Wdj6VclURzzACwbUOszZVHoPnNt27RiM-Uv1B4z3 参考书<R语言核心技术手册> 我只是个勤

[R语言绘图]plot函数的使用

R语言中最简单的一个绘图函数就是plot了.如果之前用过matlab,用R画图的时候就很可能会尝试plot这个命令能不能使用.plot(a)一般就能得到我们想要的图.但是,如果想进一步设置其他属性,如标题.x轴名称.y轴名称等,还需要对另外的一些参数做一些了解.下面就给出了一个很简单的例子,看过之后就能掌握plot函数的使用方法了. attach(mtcars)#获取系统自带的data.frame类型的数据mtcars class(mtcars) mtcars mtcars<-mtcars[or

[R语言绘图]条状图barplot

#基本的条状图 a<-c(1,2,3,4,5,6,7,8) barplot(a) #table的条状图 install.packages("vcd") library(vcd) b<-table(Arthritis$Improved) barplot(b) 参考:R语言实战 转载请注明出处:http://blog.csdn.net/zhyoulun/article/details/46433619

[R语言绘图]饼状图pie

#基本 a<-c(1,2,3,4,5,6,7,8) pie(a) #table install.packages("vcd") library(vcd) b<-table(Arthritis$Improved) pie(b) 参考:R语言实战 转载请注明出处:

[R语言绘图]直方图hist

简单直方图 a<-rnorm(1000) hist(a) 参考:R语言实战 转载请注明出处:http://blog.csdn.net/zhyoulun/article/details/46434051

[R语言绘图]气泡图symbols

绘制气泡图主要使用函数symbols(x,y,circle=r).其中x.y是坐标轴,r是每个点的半径. x<-rnorm(10) y<-rnorm(10) r<-abs(rnorm(10)) symbols(x,y,circle = r, bg=rainbow(10)) 此外,我们还可以给每个气泡加上文字. attach(mtcars) r<-sqrt(disp/pi) symbols(wt,mpg,circle=r, inches=0.3, bg="lightblue

R语言绘图002-页面布局

par().layout().split.screen()函数 1. par()函数的参数详解 函数par()可以用来设置或者获取图形参数,par()本身(括号中不写任何参数)返回当前的图形参数设置(一个list):若要设置图形参数,则可用par(tag = value)的形式,其中tag的详细说明参见下面的列,value就是参数值,例如: par(mar = c(4, 4, 1, 0.5), bg = "yellow")?? # 设置边距参数和背景色 par(pin=c(2,3))?