您好,登錄后才能下訂單哦!
這篇文章主要介紹“ggplot2繪圖的方法”,在日常操作中,相信很多人在ggplot2繪圖的方法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對(duì)大家解答”ggplot2繪圖的方法”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!
繪圖過程中,通過給圖形中添加適量的注釋(圖形、公式、注釋)以及圖形整體的外觀,可以使讀圖者更快速、更準(zhǔn)確的了解圖形表達(dá)的含義。
ggplot2包中的annotate()函數(shù)幫助用戶給圖形的指定位置添加注釋,一般注釋可以從點(diǎn)、線和面的角度進(jìn)行修飾,對(duì)應(yīng)的geom參數(shù)是text、segment、pointrange、rect。
基本圖形示例:
library(ggplot2)
x<-c(2015,2016,2017,2018,2019,2020)
y<-c(12,13,14,25,36,57)
test<-data.frame(Year=x,Num=y)
p0 <- ggplot(data = test, mapping = aes(x = Year, y = Num)) + geom_line(colour = 'blue', size = 1) + geom_point(colour = 'red', size = 2)
p0
一 圖形主體信息注釋
labs()函數(shù)或ggtitle()函數(shù)為圖形添加標(biāo)題
p1 <- p0 + labs(title="小白學(xué)R",subtitle = "學(xué)不會(huì)",caption = "堅(jiān)持")
p1
annotate()函數(shù)添加信息
p2 <- p1 +
#矩陣(rect),框出重點(diǎn)關(guān)注區(qū)域
annotate(geom = 'rect', xmin = 2018, ymin = 25, xmax = 2019, ymax = 40, alpha = 0.4) +
#帶箭頭的射線(segment)
annotate('segment', x = 2019, y = 20, xend = 2018.5, yend = 25, size = 1.2, arrow = arrow()) +
#文本型注釋
annotate('text', x = 2019, y = 20, label = '輸入信息1', colour = 'red')+
#參考線 geom_abline()、geom_vline()
geom_hline(yintercept = mean(test$Num), linetype = 2, col = 'red', size = 1) +
annotate('text', x = 2016, y = mean(test$Num) + 3, label = paste('平均值:',round(mean(test$Num),2)))+
# 添加公式 ?plotmath查看數(shù)學(xué)表達(dá)式;parse設(shè)為TRUE
annotate('text', x = 2017, y = 50, label = 'f(x) == frac(x+y,sqrt(2*pi,3))*e^-log(2,x)', parse = TRUE, size = 3, colour = 'red')
p2
二 圖形坐標(biāo)軸信息修改
坐標(biāo)軸顯示范圍
p3 <- p2 + scale_x_continuous(limits = c(2014,2022)) ;p3
## 一般使用倍數(shù)來限定大小,最小值有個(gè)0
p3 <- p1 + xlim(min(test$Num, 0)*1.2, max(test$Num)*1.2)
坐標(biāo)軸刻度、標(biāo)簽
# X 軸每隔 2 個(gè)單位顯示一個(gè)刻度 ; 改變刻度文字,label要與刻度一樣多
p2 + scale_x_continuous(breaks=seq(2015, 2020, 2) , labels = c("A","B","C"))
橫坐標(biāo)軸相關(guān)設(shè)置
##只去掉 X 軸的刻度標(biāo)簽
p4 <- p2 + theme(axis.ticks.x = element_blank()) +
scale_x_continuous(breaks=test$Year, labels = paste(test$Year,'Year')) +
theme(axis.text.x = element_text(size = 10,color = "skyblue" ,vjust = 0.5, hjust = 0.5, angle = 45))+
## 刪去網(wǎng)格線
theme(panel.grid =element_blank()) +
## 刪去外層邊框
theme(panel.border = element_blank()) +
## 再加上坐標(biāo)軸(無刻度、無標(biāo)簽)
theme(axis.line = element_line(size=1, colour = "black"))
p4
三、旋轉(zhuǎn)坐標(biāo)軸
只需添加coord_flip()函數(shù)就可以實(shí)現(xiàn)
p5 <- p4 + coord_flip();p5
到此,關(guān)于“ggplot2繪圖的方法”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。