暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

R语言绘图|多变量箱线图(boxplot)与小提琴图(vioplot)的绘制

1615

本文主要使用R语言介绍绘制一组多变量数据的箱线图及小提琴图。

一、图形介绍

(一)箱线图介绍

箱线图又称盒须图、盒式图或箱线图,用于展示连续型变量的五数(最大值、最小值、中位数及上下四分位数)。此外,箱线图还能够显示出可能的离群点(即异常值)的分布(范围为±1.5*IQR以外的值,IQR为四分位距,即上四分位数和下四分位数)

(二)小提琴图介绍

小提琴图 (Violin Plot)是箱形图和核密度图的结合,主要用来显示数据的分布形状。

箱线图和小提琴的示意如下: 

箱线图内容示意图  

小提琴图内容示意图

 

二、演示数据

本文演示数据为河南省2014-2019年各地级市GDP总量(未包含省直管县),数据来源于河南省历年统计年鉴,数据名称保存为HNGDP.xlsx。数据分布如下图所示:


三、图形绘制

#step1:加载相关包,如果没有相关包需要先进行安装

library(xlsx)

library(vioplot)

#step2:读取数据

HN.GDP <- read_excel("HNGDP.xlsx", 1)

names(HN.GDP)#查看数据列名

#step3:进行绘图

#demo1:绘制一个变量的箱线图和一个变量的小提琴图

boxplot(HN.GDP$`2014`)

vioplot(HN.GDP$`2014`)


#demo2:绘制多个变量的箱线图(并对标题、颜色、数值等进行修饰)

boxplot(HN.GDP$`2014`, HN.GDP$`2015`,HN.GDP$`2016`, HN.GDP$`2017`,HN.GDP$`2018`, HN.GDP$`2019`,

        names = c("2014", "2015", "2016", "2017", "2018", "2019"),

        main  = "河南省2014-2019GDP箱线图", xlab = "年份", ylab = "GDP(亿元)",

        col=rainbow(7)) 

    

#相关说明:首先选择要作图的变量,names函数设置对应的x轴刻度名称,main表示主标题,xlab表示x轴标题,ylab表示y轴标题,col函数表示颜色的设置,此外为彩虹色,rainbow中的数字可以根据变量的个数进行更改,下同。

#demo3:绘制多个变量的小提琴图(并对标题、颜色、数值等进行修饰)

vioplot(HN.GDP$`2014`, HN.GDP$`2015`,HN.GDP$`2016`, HN.GDP$`2017`,HN.GDP$`2018`, HN.GDP$`2019`,

        names = c("2014", "2015", "2016", "2017", "2018", "2019"),

        main  = "河南省2014-2019GDP小提琴图", xlab = "年份", ylab = "GDP(亿元)",

        col=rainbow(7),

        rectCol="grey", colMed="black" )

#相关说明:rectCol表示盒型范围颜色,范围为下四分位点到上四分位点;colMed表示中位数点的颜色。

四、其他操作。

(一)对变量取对数。可通过在boxplot函数中的操作为加入log = "y",在vioplot中的操作为加入ylog = TRUE。效果如下图所示:

(二)绘制水平形式图。通过加入horizontal = TRUE,来进行水平放置,效果如下图所示:

(三)自定义颜色。在颜色的操作上,可通过在函数中加入col = "pink"来进行指定单一颜色,效果如下图所示:

此外,也可以通过向量的形式来指定多种颜色,如在函数中加入col = c('pink', 'lightblue', 'lightgreen', "yellow", "pink", "black"),效果如下图所示:

本文到此结束,感兴趣小伙伴可通过官方帮助文档进一步了解。


文章转载自日常分享的小懒猫,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论