R语言 在一个窗口中绘制多个格子图

R语言 在一个窗口中绘制多个格子图

在这篇文章中,我们将讨论如何在一个窗口中绘制多个格子图。

使用的模块

  • lattice: lattice包使用网格包来提供更好的数据关系。它是实现Trellis图形(显示变量之间关系的图形)的一个附加包。
  • gridExtra: 这个包提供了多个函数,可以定义各种网格,用来安排多个图。

这两个包都必须明确地安装在系统上。 首先,我们需要设置一个数据框架,其中包含要在x轴和y轴上绘制的数据,还有另一列可以用来区分格子。对于这一列的每一个独特的值,将产生一个不同的格子图。

单个格子图是通过xyplot()函数创建的,这个函数产生一个散点图。对于每一行,一个特定的条件决定了它应该被放在哪个格子里。

语法

xyplot(formula, data, ..)

参数

  • formula。指定特定的条件
  • data:要绘制的数据框架

一旦所有的格子图都准备好了,就应该把它们安排在一个窗口中,为此我们使用了gridExtra包的arrange()函数。

R语言中的 arrange() 函数用于借助传递给函数的列名来重新排列表格的行数。

语法: arrange(x, expr)

参数:

x: 要重新排序的数据集

expr: 带有列名的逻辑表达式

例子

library(lattice)
library(gridExtra)
  
df<-data.frame(x = rnorm(100),
               y = rnorm(100),
               z = c(rep("A", 35),
                     rep("B", 40),
                     rep("C", 25))
)
                 
df
  
lat1 <- xyplot(y~x,df[dfz == 'A',])
lat2 <- xyplot(y~x,df[dfz == 'B',])
lat3 <- xyplot(y~x,df[df$z == 'C',])
  
grid.arrange(lat1, lat2, lat3, ncol = 3)

输出

在R的一个窗口中绘制多个格子图

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程