R语言 分层博弈图

R语言 分层博弈图

boxplot 是通过四分位数对数字数据组的图形表示。箱形图是非参数性的,它们显示统计人群中样本的变化,而不对基本的统计分布做任何假设。盒形图中不同部分之间的间隔表示数据的分散和偏斜程度,并显示出离群值。膨胀图可以垂直或水平绘制。膨胀图的名字来自于中间的方框。 分层膨胀图 用于检查 分类变量和数字变量之间的关系 ,以及由第三个分类变量定义的阶层或群体之间的 关系 。当涉及到比较分类变量时,分层博列表很有用。

在R中的实现

在R编程中,可以使用 R图形包boxplot() 函数来形成分层博列表

语法

boxplot(formula, data = NULL, ..., subset, na.action = NULL, xlab = mklab(y_var = horizontal),

ylab = mklab(y_var =! horizontal), add = FALSE, ann = !add, horizontal = FALSE, drop = FALSE,

sep = ".", lex.order = FALSE)

boxplot(x, ..., range = 1.5, width = NULL, varwidth = FALSE, notch = FALSE, outline = TRUE, names, plot = TRUE,

border = par("fg"), col = NULL, log = "", pars = list(boxwex = 0.8, staplewex = 0.5, outwex = 0.5)。

ann = !add, horizontal = FALSE, add = FALSE, at = NULL)
R
参数 说明
formula 一个公式。
data 一个数据框架/列表,公式中的变量应从该框架/列表中提取。
subset 一个可选的向量,指定用于绘图的观测值子集。
na.action 一个函数,表示当数据包含NA时应该发生什么。
xlab,ylab x轴和y轴的注释。可以通过ann=FALSE来压制。
add 逻辑的,如果为真,将boxplot添加到当前绘图中。
ann 逻辑性的,表示是否应该对轴进行注释(通过xlab和ylab)。
horizontal 逻辑的,表示boxplots是否应该是水平的;默认的FALSE表示垂直的盒子。
x 用于指定生成boxplots的数据。 可以是一个数字向量,也可以是一个包含此类向量的单一列表。
range 这决定了图表晶须从方框中延伸出多远。
width 一个向量,给出构成图的方框的相对宽度。
varwidth 如果varwidth为 “true”,则方框的宽度与组内观测值的平方根成正比。
notch 如果缺口为 “true”,则在方框的每一侧绘制一个缺口。
outline 如果轮廓不为真,则不绘制离群值。
names 将被打印在每个boxplot下面的组标签。
boxwex 应用于所有方框的比例因子。
staplewex 订书针线的宽度扩展,与方框宽度成比例。
outwex 离群线的宽度扩展,与盒子的宽度成比例。
plot 如果为 “true”(默认),则产生一个boxplot。否则,将返回boxplots所基于的摘要。
border 一个可选的颜色向量,用于表示boxplots的轮廓。
cols 如果col不是空值,则假定它包含用于为箱形图主体着色的颜色。
log 表示x或y或两者的坐标应以对数比例绘制的字符。
pars 一个包含更多图形参数的列表(可能有很多)。
at 数值向量,给出应该绘制boxplots的位置,特别是当add = TRUE时。
对于公式方法,命名的参数将被传递给默认方法。

例1 :

要绘制分层boxplot,可以使用R中数据集库的mtcars数据集。mtcars数据集包含了来自Motor Trend汽车道路测试的数据。在这里,让我们把不同汽车的里程数(这里是英里/加仑)与它们的档位数绘制出来。

# Import the required library
library(datasets)
  
# Import the dataframe
cars <- data.frame(mtcars)
  
# Using boxplot()
boxplot(mpg~gear, data = mtcars,
        main = "Different boxplots for number of gears.",
        xlab = "No.of gears",
        ylab = "Mileage",
        col = "orange",
        border = "brown"
)
R

R编程中的分层博弈图

例2 :

我们在这里使用的数据集是LungCapData数据集,它包含了不同年龄组的吸烟者和非吸烟者的肺活量数据。数据集的结构有6个变量,每个变量代表肺活量、年龄、身高、吸烟(”是 “代表吸烟者,”否 “代表不吸烟者)、性别(男性/女性)和剖腹产(是/否)。我们将把年龄分成几组,然后尝试绘制吸烟者与非吸烟者的肺活量的分层博弈图,并以年龄分层。请在这里下载CSV文件。

# Load the dataset
LungCapData <- read.csv("LungCapData.csv", header = T)
LungCapData <- data.frame(LungCapData)
attach(LungCapData)
  
# Catgorise Age into groups
AgeGroups <- cut(LungCapDataAge,
                 breaks = c(0, 13, 15, 17, 25),
                 labels = c("<13", "14/15", "16/17", ">=18"))
head(LungCapData)
  
# BoxPlot 1
boxplot(LungCapDataLungCap~LungCapDataSmoke,
        ylab = "Capacity", 
        main = "Lung Capacity of Smokers Vs Non-Smokers",
        las = 1)
  
# BoxPlot 2
boxplot(LungCapDataLungCap[LungCapDataAge>=18]~LungCapDataSmoke[LungCapDataAge>=18],
        ylab = "Capacity",
        main = "Lung Capacity of Smokers Vs Non-Smokers",
        las = 1)
  
# BoxPlot 3
boxplot(LungCapDataLungCap~LungCapData$Smoke*AgeGroups,
        ylab = "Capacity", xlab = "",
        main = "Lung Capacity of Smokers Vs Non-Smokers",
        col = c(4, 2), las = 2)
R

输出

# Boxplot 1

Boxplot 1描绘了吸烟者和非吸烟者的肺活量,其中No象征着非吸烟者,Yes象征着吸烟者。

R编程中的分层博弈图

通过分析上述图表,我们可以明确地说,非吸烟者的肺活量比吸烟者的肺活量平均要低。

# 列表2

列表2描绘了大于或等于18岁年龄组的吸烟者和非吸烟者的肺活量,其中不代表非吸烟者,是代表吸烟者。

R编程中的分层博弈图

# 勾股表3

Boxplot 3描绘了数据集中不同年龄组的吸烟者和非吸烟者的肺活量,其中蓝色的boxplots代表非吸烟者,红色代表吸烟者。

R编程中的分层博弈图

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程