多语言展示
当前在线:247今日阅读:75今日分享:44

如何使用R语言画图

学习大数据,难免要学习R语言进行画图,那么如何使用R语言画图呢?小编就来讲一讲!
工具/原料
1

电脑

2

R语言编辑器

方法/步骤
1

查看绘图常用函数

3

认识参数值

4

实例讲解!> x<-rnorm(10)> y<-rnorm(10)> x[1] 1. 0.79137623 2. 0.10294401 0. 1.91956132 0.13484228 0.38414578 0.62028349 0.29640332> y[1] 0.2357669 1.1469255 -0.9895425 -1.7805297 0.4643383 0.3902600 -0.3774699 0.3367386 1.1519940 -0.3744504> plot(x,y)

5

加入选项,修改风格> plot(x, y, xlab='Ten random values', ylab='Ten other values',+ xlim=c(-2, 2), ylim=c(-2, 2), pch=22, col='red',+ bg='yellow', bty='l', tcl=0.4,+ main='How to customize a plot with R', las=1, cex=1.5)// bty='l', tcl=0.4,表示给出修改的意义;bty控制图形边框形状,可用的值为: 'o', 'l', '7', 'c', 'u' 和']' (边框和字符 的外表相像);这些字符本身的形状对应着边框样式,比如(默认值)o表示四条边都显示,而c表示不显示右侧边如果bty='n'则不绘制边框;tcl 坐标轴刻度线的高度;取一个与文本行高的比例值;正负值意义类似tck,默认值为-0.5,即向外画线,高度为半行文本高;观察图3.1左下角小图的坐标轴刻度线cex控制缺省状态下符号和文字大小的值,用于表示对默认的绘图文本和符号放大多少倍。需要注意一些绘图函数如plot.default等也有一个相同名字的参数,但是此时表示在函数par()的参数cex的基础上再放大多少倍,此外还有函数points等接受一个数值向量为参数。默认值为1,如果设为1.5,则表示比默认大小大50%,若设为0.5,则表示比默认值小50%。cex.axis 坐标轴刻度标记的缩放倍数cex.lab 坐标轴标题的缩放倍数cex.main 图主标题的缩放倍数cex.sub 图副标题的缩放倍数col 图中符号(点、线等)的颜色,与cex参数类似,具体的细节颜色也可以通过如下参数设置:col.axis 坐标轴刻度标记的颜色col.lab 坐标轴标题的颜色col.main 图主标题的颜色col.sub 图副标题的颜色cin,这是一个只读参数,不能进行修改。以形式(width,height)返回字体大小,单位为英寸。这和参数cra的作用一样,只是测量单位不同。col,用于设定默认的绘图颜色col.axis。坐标轴刻度值的颜色,默认为'black'。

6

par()函数修改参数命令opar <- par()par(bg='lightyellow', col.axis='blue', mar=c(4, 4, 2.5, 0.25))plot(a, b, xlab='Ten random values', ylab='Ten othervalues',xlim=c(-2, 2), ylim=c(-2, 2),pch=22, col='red', bg='yellow',bty='l', tcl=-.25, las=1, cex=1.5)title('How to customize a plot with R (bis)', font.main=3, adj=1)mar:修改绘图区边界;

7

低水平命令绘图opar <- par()par(bg='lightgray', mar=c(2.5, 1.5, 2.5, 0.25))plot(a, b, type='n', xlab='', ylab='', xlim=c(-2, 2),//type='n',不画出点ylim=c(-2, 2), xaxt='n', yaxt='n')//xaxt='n', yaxt='n',不画坐标轴rect(-3, -3, 3, 3, col='cornsilk')//改变作图区points(x, y, pch=10, col='red',cex=2) //添加点axis(side=1, c(-2, 0, 2), tcl=-0.2, labels=FALSE)//x轴axis(side=2, -1:1, tcl=-0.2, labels=FALSE) //y轴title('How to customize a plot with R (ter)',font.main=4, adj=1, cex.main=1)mtext('Ten random values', side=1, line=1, at=1, cex=0.9, font=3)mtext('Ten other values', line=0.5, at=-1.8, cex=0.9, font=3)mtext(c(-2, 0, 2), side=1, las=1, at=c(-2, 0, 2), line=0.3,col='blue', cex=0.9)mtext(-1:1, side=2, las=1, at=-1:1, line=0.2, col='blue', cex=0.9)par(opar)

8

利用grid和 lattice 包作图加载包library(lattice)添加变量n <- seq(5, 45, 5)x <- rnorm(sum(n))y <- factor(rep(n, n))做密度图densityplot (~ x | y)

9

densityplot(~ x | y, panel = function(x, ...) {panel.densityplot(x, col='DarkOliveGreen', ...)panel.mathdensity(dmath=dnorm,args=list(mean=mean(x), sd=sd(x)),col='darkblue')})

注意事项

R绘图 gemo(graphics)

推荐信息