R語言基礎圖形綜述

R語言基礎圖形分爲創建圖形與添加圖形內容。

  • 創建圖形
    • 條形圖
    • 餅圖
    • 直方圖
    • 核密度圖
    • 箱線圖
    • 點圖
    • 散點圖
    • 折線圖
    • 相關圖
    • 馬賽克圖
  • 添加圖形內容
    • 圖形參數:符號、線條、顏色、文本屬性、圖形尺寸與邊界尺寸
    • 標題、座標軸、圖例

各種圖形是高級繪圖函數,爲圖形添加各種內容的函數爲低級繪圖函數。

繪圖邏輯基本上爲先創建一個圖形,隨後添加各種內容以完善豐富原始圖形。

本本任務爲簡單論述創建圖形及圖形相關添加內容,在以後的文章中詳細介紹各分類圖形與圖形用途。

圖形創建與保存

創建

使用plot()函數創建圖形

示例:

#創建散點圖
#綁定數據
attach(mtcars)
#調用plot函數
plot(wt,mpg)
#添加圖形內容
#添加一條擬合線
abline(lm(mpg~wt))
#添加標題
title('Regression of MPG on Weight')
#解除數據綁定狀態
detach(mtcars)

在這裏插入圖片描述

保存

  • Rstudio下點擊右下角plot面板export-Save as Image命令。
  • Rstudio下點擊右下角plot面板,左右箭頭可以顯示前一個和後一個創建的圖形
  • 也可以使用dev相關函數,具體參考help(dev.cur)

圖形參數

圖形參數用於定義一幅圖形大小、顏色、座標軸等特徵。

特徵參數包括:

  • 符號和線條
  • 顏色
  • 文本屬性
  • 圖形尺寸與邊界尺寸

圖形參數添加方式:

  • 一種是通過函數par()來指定,這種方式設置的參數值在會話結束前一直有效。調用格式爲par(選項=值)。
#生成數據
data <- c(2,4,1,2,1,2,6,7,5,2)
#將點換成三角形
par(pch=17)
#畫出點圖
plot(data)

在這裏插入圖片描述

解除par狀態,Rstudio下plot面板點擊掃把圖標即可

也可以以opar <- par(no.readonly = TRUE)開頭,par(opar)還原初始圖形設置

  • 一種是在圖形函數(高級繪圖函數)中直接添加(選項=值),這種方式僅僅對這幅圖本身有效。
#生成數據
data <- c(2,4,1,2,1,2,6,7,5,2)
#將點換成下三角形
plot(data,pch=25)

在這裏插入圖片描述

高級繪圖函數可以指定的函數不同,可以通過help()查看可以指定的參數有哪些。如help(‘plot’)、help(‘hist’)。

符號和線條

參數及描述如下:

參數 描述
pch 指定繪製點時使用的符號
cex 指定符號大小,默認爲1。1.5表示放大1.5倍,0.5表示縮小50%
lty 指定線條類型
lwd 指定線條寬度,默認爲1。lwd=2將生成一條兩倍於默認寬度的線條

pch類型如下:
在這裏插入圖片描述
lty類型如下:
在這裏插入圖片描述

顏色

顏色參數如下:

參數 描述
col 默認繪圖顏色。col='blue’藍色
col.axis 座標軸刻度文字的顏色
col.lab 座標軸標籤顏色
col.main 標題顏色
col.sub 副標題顏色
fg 圖形前景色
bg 圖形背景色

用colors()函數可以返回顏色名稱。rainbow()可以生成彩虹型顏色。

使用RColorBrewer包可以調出顏色板

library(RColorBrewer)
display.brewer.all()

文本屬性

文本屬性用來指定字號、字體和字樣。

參數 描述
cex 指定文本大小。默認爲1
cex.axis 座標軸刻度文字的縮放倍數。類似於cex
cex.lab 座標軸標籤(名稱)的縮放倍數
cex.main 標題縮放倍數
cex.sub 副標題縮放倍數
font 指定文字樣式。整數。1=常規,2=粗體,3=斜體,4=粗斜體,5=符號字體
font.axis 座標軸刻度文字的字體樣式
font.lab 座標軸標籤(名稱)的字體樣式
font.main 標題字體樣式
font.sub 副標題字體樣式
ps 字體磅值。文本的最終大小爲ps.cex
family 文本字體。取值serif(襯線),sans(無襯線),mono(等寬)

圖形尺寸與邊界尺寸

參數 描述
pin 以英寸表示圖形尺寸(寬和高)
mai 以數值向量表示邊界大小,順序爲‘下,左,上,右’,單位爲英寸
mar 以數值向量表示邊界大小,順序爲‘下,左,上,右’,單位爲英分。默認值爲c(5,4,4,2)+0.1

綜合示例:

#生成數據
data <- c(1,2,5,3,6,4,5,1,4)
#複製圖形參數便於還原
opar <- par(no.readonly = TRUE)
#設置圖形大小
par(pin=c(2,2))
#設置線條寬度和符號大小
par(lwd=2,cex=1.5)
#設置座標軸刻度文字縮放倍數及座標軸字體樣式
par(cex.axis=.75,font.axis=3)
#繪圖,下三角形,紅色
plot(data,pch=25,col='red')
#還原圖形設置
par(opar)

在這裏插入圖片描述

標題、座標軸、圖例

許多高級繪圖函數(如plot,hist)可以添加座標軸、文本標註選項。

標題

使用title()函數可以爲圖形添加標題和座標軸標籤。

調用格式爲:

title(main=‘主標題’,sub=‘副標題’,xlab=‘x座標標籤’,ylab=‘y座標標籤’)

某些高級繪圖函數已經包含默認標題和標籤。可以通過plot(ann=FALSE)或par(ann=FALSE)移除。

座標軸

函數axis()自定義座標軸。

調用格式如下:

axis(side,at=,labels=,pos=,lty=,col=,las=,tck=,…)

選項 描述
side 一個整數。表示在圖形哪邊繪製座標軸(1=下,2=左,3=上,4=右)
at 一個數值向量,表示需要繪製刻度線的位置
labels 一個字符向量,表示置於刻度線旁邊的文字標籤
pos 座標軸線繪製位置的座標
lty 線條類型
col 線條和刻度線顏色
las 標籤是否平行於(=0)或垂直於(=2)座標軸
tck 刻度線的長度,以相對於繪圖區域大小的分數表示(負值表示在圖形外側,正值表示在圖形內測,0表示禁用刻度,1表示繪製網格線)默認值爲-0.01
表示其他圖形參數

參考線

使用abline()函數爲圖形添加參考線。

格式如下:

abline(h=yvalues,v=xvalues)

abline函數也可以添加線條類型、顏色和寬度等圖形參數

圖例

當圖中數據不止一組時,圖例用於辨別圖中數據屬於哪一組。

使用函數legend()來添加圖例。格式爲:

legend(location,title,legend,…)

選項 描述
location 圖例位置
title 圖例標題的字符串
legend 圖例標籤組成的字符型向量

文本標註

使用函數text()和mtext()將文本添加到圖形上。text()可向繪圖區域內部添加文本,mtext()向圖形的四個邊界之一添加文本。格式爲:

text(location,‘text to place’,pos,…)

mtext(‘text to place’,side,line=n,…)

attach(mtcars)
plot(wt,mpg,main='Mileage vs weight',xlab = 'weight',ylab = 'Mileage',pch=18,col='blue')
text(wt,mpg,row.names(mtcars),cex=0.6,pos=4,col = 'red')
detach(mtcars)

在這裏插入圖片描述

數學標註

可以使用類似於TeX中寫法爲圖形調價數學符號和公式。

參閱help(plotmath)

查看例子demo(plotmath)

函數plotmath()可以爲圖形主體或邊界上的標題、座標軸名稱或文本標註添加數學符號。

圖形組合

可以通過par()或layout()將多幅圖組合爲一幅總括圖形。

  • par()函數添加參數mforw=c(nrows,ncols)來創建按行填充,行數爲nrows,列數爲ncols的圖形矩陣。

par()

#創建一個2行2列的圖形矩陣
attach(mtcars)
opar <- par(no.readonly = TRUE)
par(mfrow=c(2,2))
plot(wt,mpg)
plot(wt,disp)
hist(wt)
boxplot(wt)
par(opar)
detach(mtcars)

在這裏插入圖片描述

layout()

layout(mat),mat爲矩陣,指定所要組合的多個圖形的所在位置。

#生成一個3圖組合圖形矩陣
#一幅放在第1行,其他放在第2行
attach(mtcars)
layout(matrix(c(1,1,2,3),2,2,byrow = TRUE))
hist(wt)
hist(mpg)
hist(disp)
detach(mtcars)

在這裏插入圖片描述


RR語言小白速通
R懂點R語言
歡迎分享收藏關注

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章