R語言常用繪圖函式
條形圖
條形圖是用一個單位長度表示一定的數量,根據數量的多少畫成長短不同的直條,然後把這些直條按一定順序排列起來。
條形圖橫軸上的資料是離散的而不是連續的。
- 引數說明
height:高度,通過該引數可以指定要畫多少個柱子以及每個柱子的高度,其值有兩種格式。
第一種:向量vector,此時會根據向量的長度來判斷有多少個柱子,向量中的每個值就是柱子的高度。
第二種:矩陣martrix,此時用於畫堆積柱狀圖。
#使用向量 barplot(height=1:5)
#使用矩陣,堆積柱狀圖 data <- cbind(a=1:4,b=1:4) barplot(data)
beside:當輸入引數為矩陣時,預設為堆積柱狀圖,beside預設值為FALSE,當為TRUE時,則每一列都表示一個分組並列。
data <- cbind(a=1:4,b=1:4) barplot(data,beside=TRUE)
width:寬度,控制每個柱子的寬度,預設值為1,值得注意的是,該值是可以迴圈使用的,當只設置一個值時,會自動迴圈,生成長度和柱子數目相同的向量,效果就是所有柱子的寬度一樣,也可以指定多個值,使每個柱子寬度不同。
barplot(c(1,2,3,4,5),width=5:1)
names.arg:每個柱子下的標記,當height為向量時,預設的標記為向量的names屬性,當height為matrix時,預設為colnames的屬性。
barplot(c(1,2,3,4,5),names.arg=c("A","B","C","D","E"))
data <- cbind("A" = 1:4, "B" = 1:4) barplot(data, names.arg = c("D", "E"))
繪製條形圖練習
#繪製簡單的條形圖 math <- c(78,92,89,61,95) barplot(math) #新增x軸上的分類標籤 math <- c(78,92,89,61,95) name <- c("小剛","小明","小花","小芳","小麗") barplot(math,names.arg = name) #指定填充色、邊框色、標題 math <- c(78,92,89,61,95) name <- c("小剛","小明","小花","小芳","小麗") barplot(math,names.arg = name,border="green",col=c("red","blue","orange","yellow","green"),main="成績") #繪製堆疊條形圖 math <- c(78,92,89,61,95) english <- c(90,89,95,70,98) grade <- matrix(c(math,grade),2,5,byrow =TRUE) name <- c("小剛","小明","小花","小芳","小麗") barplot(grade,border="green",names.arg=name,main="成績",xlab="姓名",ylab="成績",legend=c("數學","英語"),beside=TRUE)
繪製餅狀圖
餅圖是將各項的大小與各項總和的比例顯示在一張餅中,以餅的大小來確定每一項的佔比。餅圖可以比較清楚的反映出部分與部分,部分與整體之間的比例關係,易於顯示每組資料相對於總數的大小,而且顯現方式直觀。
R語言中,提供繪製餅圖的函式是pie(),每一個扇形的角度與相應資料的數值大小成比例,使用正數作為向量輸入。附加引數用於控制標籤,顏色,標題等。
# 資料準備 info = c(1, 2, 4, 8) # 命名 names = c("Google", "Runoob", "Taobao", "Weibo") # 塗色(可選) cols = c("#ED1C24","#22B14C","#FFC90E","#3f48CC") # 計算百分比 piepercent = paste(round(100*info/sum(info)), "%") # 繪圖 pie(info, labels=piepercent, main = "網站分析", col=cols, family='GB1') # 新增顏色樣本標註 legend("topright", names, cex=0.8, fill=cols)
繪製3D餅圖,需要安裝R包plotrix
#install.packages("plotrix") library(plotrix) # 資料準備 info = c(1, 2, 4, 8) lbl <- c("London","New York","Singapore","Mumbai") pie3D(info,labels = lbl,explode = 0.1, main = "城市3D餅圖")
- 繪製散點圖
散點圖通常是用來表示兩個連續變數之間的關係,圖中的每個點表示目標資料集中的每個樣本。散點圖通過散點的疏密程度表示兩個特徵的數量關係。
引數說明
x 橫座標 x 軸的資料集合
y 縱座標 y 軸的資料集合
type:繪圖的型別,p 為點、l 為直線, o 同時繪製點和線,且線穿過點 main 圖表標題
xlab、ylab x 軸和 y 軸的標籤名稱
xlim、ylim x 軸和 y 軸的範圍
axes 布林值,是否繪製兩個 x 軸