直方圖(Histogram)又稱柱狀圖,是一種統計報告圖,由一系列高度不等的縱條紋或線段表示的數據分布情況。可以使用直方圖估計數據的概率分布情況。
在R語言中,可以使用hist()函數來繪制直方圖。
其使用的格式為:
hist(x, breaks = "Sturges",
freq = NULL, probability = !freq,
include.lowest = TRUE, right = TRUE,
density = NULL, angle = 45, col = NULL, border = NULL,
main = paste("Histogram of" , xname),
xlim = range(breaks), ylim = NULL,
xlab = xname, ylab,
axes = TRUE, plot = TRUE, labels = FALSE,
nclass = NULL, warn.unused = TRUE, …)
主要參數的含義如下:
(1)x
向量,直方圖所用到的數據。
(2)breaks
直方圖的斷點,主要有以下幾種情況:
①可以是一個向量給出直方圖中每個區間的斷點;
②可以是一個函數用于計算每個斷點的向量;
③用于表示區間數的一個數字;
④一個字符串用于給出計算區間數所使用的算法;
⑤一個用于計算區間數的函數。
(3)freq
邏輯變量,如果設置為TRUE,則直方圖的數據為頻數,若為FALSE,則為概率密度。
當僅當breaks為等距,且為指定probability時,freq默認為TRUE。
(4)probability
與!freq的含義相同。
(5)include.lowest
邏輯值,如果為TRUE,則如果數據x[i]等于斷點值,則會包含在第一個區間條中(如right參數為FALSE,則會包含在下一個區間中)。除非breaks是向量,否則設置會被忽略并給出一個警告錯誤。
(6) right
邏輯值。如果設置為TRUE,則直方圖條右側區間是封閉的(左側開放)。
(7)density
指陰影線的密度,即每英寸(2.54厘米)的線數。默認值為NULL值,意味著沒有陰影線。非正值也不會繪制陰影線。
(8)angle
指陰影線的斜度,以逆時針角度給出。默認為45度。
(9)col
填充條形使用的顏色。默認值為NULL,即沒有填充色。
(10)border
數字或字符串,用于描述條形邊框的顏色。默認為NULL,即使用標準前景色。
(11)main, xlim, ylim, xlab, ylab
見本站關于plot函數中的說明(R語言中plot函數的使用)
(12)axes
邏輯值。默認為TRUE,繪圖時繪制軸。
(13)labels
邏輯值。默認為FALSE,如果為TRUE,則在條形框的頂端給出標簽(頻數或密度)。
下面舉幾個例子:
(1)繪制19名學生的身高頻率直方圖。
Height<-c(144,166,163,143,152,169,130,159,160,175,161,170,146,159,150,183,165,146,169)
hist(Height,col="lightblue",border="red",labels=TRUE,ylim=c(0,7.2))
結果如下圖:
(2)hist(Height,breaks=12,freq=FALSE,density=10,angle=60)
結果如下圖:
(3)
data <- c(rep(1, 10), rep(2, 5), rep(3, 6))
hist(data, breaks = c(0.5, 1.5, 2.5, 3.5))
結果如下:
新聞熱點
疑難解答