R语言数据分析系列之五

时间:2023-02-11 02:34:33

R语言数据分析系列之五

本节来讨论一下R语言的基本图形展示,先来看一张效果图吧。

R语言数据分析系列之五

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY29tYXBsZQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

这是一张用R语言生成的,虚拟的wordcloud云图,详细实现细节请參见我的github项目:https://github.com/comaple/R-wordcloud.git

好了我们開始今天的旅程吧:

本节用到的包有:RColorBrewer用来生成序列颜色值, plotrix三维图形

本节用到的数据集:vcd包中的Arthritis数据集

数据集

install.packages("vcd")
library('vcd')
install.packages(plotrix) #将图形包也一并安装了
library(plotrix)
data(package='vcd') # 查看vcd包得所有数据集

R语言数据分析系列之五

class(Arthritis) # 查看数据集类型
names(Arthritis) # 查看列名
arth <- Arthritis # 复制一份
arth[1:10,] #查看前10行数据

柱状图

#该数据集最后一列Improved为因子型数据。
table(arth$Improved) #查看因子水平的count值
col <- c(brewer.pal(9,'YlOrRd')[1:9]) #设置颜色序列
barplot(table(arth$Improved),col=col,xlab='improved',ylab='count',main='StatisticsOf Improved') #绘制柱状图

R语言数据分析系列之五

barplot(table(arth$Improved),col=col,horiz=T,xlab='count',ylab='improved',main='StatisticsOf Improved')  #水平柱状图

R语言数据分析系列之五

barplot(counts,col=col,legend=rownames(counts),width=0.1)  #堆砌条形图

R语言数据分析系列之五

barplot(counts,col=col[1:3],legend=rownames(counts),width=0.1,beside=T)#分组条形图

R语言数据分析系列之五

饼图

par(mfrow=c(1,2)) # 定义横向画布,两格布局
label <- c('壮年','中年','长辈','老年')
ages <- cut(arth$Age,breaks=c(20,30,50,70,100),labels=label)#将年龄数据离散化
pie(table(ages),family='STKaiti') # 画出饼图 pie(table(ages),labels=paste(levels(ages),':',round(table(ages)/sum(table(ages))*100,2),'%'),family='STKaiti',main='关节炎发病率年龄段占比')

R语言数据分析系列之五

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY29tYXBsZQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

pie3D(table(ages),labels= paste(round(table(ages)/sum(table(ages))*100,2),'%'),family='STKaiti',main='关节炎发病率年龄段占比',explode=0.1)# 3D 饼图

R语言数据分析系列之五

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY29tYXBsZQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

直方图

我们採用mtcars数据集来进行图形绘制:

h <- hist(mtcars$mpg,breaks=12,col=col,freq=F,xlab='MilesPer Gallon',main='Histogram Of Car Gallon,Density curve') # 绘制直方图

lines(density(mtcars$mpg),col='blue',lwd=2)#加入核密度图

R语言数据分析系列之五

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY29tYXBsZQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

假设要单独绘制和密度图的话能够这样:

plot(density(mtcars$mpg),main='DensityOf  Car Gallon')

图中我们能够看到,我们得核密度函数採用的高斯核,方差为2.477。样本採样为32个。

R语言数据分析系列之五

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY29tYXBsZQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

箱型图

箱线图。通过绘制连续型变量的五数总括,即最小值(相应图中最以下那条线)、下四分位数(相应第二条线)、中位数(相应最中间那条线)、上四分位数(相应箱子上边沿) 以及最大值(相应最上面那条线),描写叙述了连续型变量的分布。

而且能够将离群点列出。

比如我们还拿mtcars数据集,当中mpg是每百公里油耗。cyl是发动机汽缸数。要对照不同得汽缸数对每加仑汽油行驶的公里数的影响就能够这样作图:

boxplot(mpg ~ cyl,data=mtcars,main='Car Milage Data',xlab='Number Of Cylinder',ylab='Miles Per Gallon')

从图中我们能够明显看到。4缸发动机有效利用率最高。6缸的最稳定,8缸利用率低且不够稳定。

R语言数据分析系列之五