您的位置:首页 > 编程语言

慕课—R语言之数据可视化—学习笔记 3.4Lattice绘图系统

2016-05-22 17:04 351 查看

Lattice绘图系统

在前面的学习中,学到了R语言的基本的绘图系统,在本节中,将学习Lattice绘图系统。

绘图函数

---lattice包

        xyplot(适合散点图)/bwplot/histgram/stripplot/dotplot(点图)、splom、levelplot/contourplot

格式:xyplot(y~x|f*g,data)

panel函数用于控制每个面板内的绘图

---grid包

实现了独立于base的绘图系统

Lattice包是基于grid创建的;很少直接从grid包调用函数

Lattice与base的区别

      base绘图函数直接在图形设备上绘图

Lattice系统则返回的trellis类对象

打印函数真正执行了在设备上绘图

命令执行时,trells类对象会被自动自助打印

——————————————————————————————————————————————————

案例

导入包Lattice

library(lattice )

xyplot(Temp~Ozone,data=airquality)



airquality$Month=factor(airquality$Month)

xyplot(Temp~Ozone|Month,data=airquality,

       layout=c(5,1))



下面的语句就能看得出其与base的不同之处了。在得到的q后,需要使用print函数将其绘制出来。(我不喜欢使用->,无论是R语言还是C++,我会尽量避免使用它)

q=xyplot(Temp~Wind,data=airquality)

print(q)

使用随机变量,rnorm为正态分布sd为方差

set.seed(1)#种子点可以每次产生的随机数一致;

#如果别人要验证时,使用种子点可以再现原来使用的随机数

x=rnorm(100)

f=rep(0:1,each=50)

y=x+f-f*x+rnorm(100,sd=0.5)

xyplot(y~x|f,layout=c(2,1))



图中添加均值,线性拟合线:

xyplot(y~x|f,panel = function(x,y){

  panel.xyplot(x,y)

  panel.abline(v=mean(x),h=mean(y),ltz=2)

  panel.lmline(x,y,col="red")

})
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息