1. 程式人生 > >R語言數據分析系列之五

R語言數據分析系列之五

r語 來看 tab barplot code 繪制 ber map lib

R語言數據分析系列之五

—— by comaple.zhang


本節來討論一下R語言的基本圖形展示,先來看一張效果圖吧。

技術分享

這是一張用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包得所有數據集


技術分享

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‘)  #繪制柱狀圖


技術分享

barplot(table(arth$Improved),col=col,horiz=T,xlab=‘count‘,ylab=‘improved‘,main=‘StatisticsOf Improved‘)  #水平柱狀圖


技術分享

barplot(counts,col=col,legend=rownames(counts),width=0.1)  #堆砌條形圖


技術分享

barplot(counts,col=col[1:3],legend=rownames(counts),width=0.1,beside=T)#分組條形圖


技術分享

餅圖

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=‘關節炎發病率年齡段占比‘)


技術分享

pie3D(table(ages),labels= paste(round(table(ages)/sum(table(ages))*100,2),‘%‘),family=‘STKaiti‘,main=‘關節炎發病率年齡段占比‘,explode=0.1)# 3D 餅圖


技術分享

直方圖

我們採用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)#加入核密度圖


技術分享

假設要單獨繪制和密度圖的話能夠這樣:

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


圖中我們能夠看到,我們得核密度函數採用的高斯核,方差為2.477。樣本採樣為32個。

技術分享

箱型圖

箱線圖。通過繪制連續型變量的五數總括,即最小值(相應圖中最以下那條線)、下四分位數(相應第二條線)、中位數(相應最中間那條線)、上四分位數(相應箱子上邊沿) 以及最大值(相應最上面那條線),描寫敘述了連續型變量的分布。

而且能夠將離群點列出。

比如我們還拿mtcars數據集,當中mpg是每百公裏油耗。cyl是發動機汽缸數。要對照不同得汽缸數對每加侖汽油行駛的公裏數的影響就能夠這樣作圖:

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


從圖中我們能夠明顯看到。4缸發動機有效利用率最高。6缸的最穩定,8缸利用率低且不夠穩定。

技術分享

R語言數據分析系列之五