R語(yǔ)言編程繪圖箱線圖基本實(shí)例
基本箱線圖繪制
使用ggplot2
繪制箱線圖的核心函數(shù)是geom_boxplot()
。以下是一個(gè)基礎(chǔ)示例,展示如何用iris
數(shù)據(jù)集繪制不同物種(Species)的萼片長(zhǎng)度(Sepal.Length)分布:
library(ggplot2) ggplot(iris, aes(x = Species, y = Sepal.Length)) + geom_boxplot()
顏色與填充控制
通過(guò)fill
和color
參數(shù)可分別控制箱線圖內(nèi)部填充色和邊框顏色:
ggplot(iris, aes(x = Species, y = Sepal.Length, fill = Species)) + geom_boxplot(color = "black", alpha = 0.7)
alpha
參數(shù)調(diào)整透明度(0-1)- 顏色支持Hex格式(如
#FF5733
)或R顏色名稱
異常值樣式調(diào)整
箱線圖的異常值(outliers)可通過(guò)以下參數(shù)定制:
geom_boxplot( outlier.color = "red", # 異常點(diǎn)顏色 outlier.shape = 19, # 點(diǎn)形狀編號(hào) outlier.size = 3, # 點(diǎn)大小 outlier.alpha = 0.6 # 透明度 )
寬度與位置調(diào)整
width
參數(shù)控制箱體寬度,position
調(diào)整分組位置:
ggplot(iris, aes(x = Species, y = Sepal.Length, fill = Species)) + geom_boxplot(width = 0.5, position = position_dodge(0.8))
分組箱線圖
當(dāng)需要按兩個(gè)分類(lèi)變量分組時(shí),使用交互變量或分面:
# 方法1:dodge分組 ggplot(mpg, aes(x = class, y = hwy, fill = factor(cyl))) + geom_boxplot(position = position_dodge(preserve = "single")) # 方法2:分面 ggplot(mpg, aes(x = class, y = hwy)) + geom_boxplot() + facet_wrap(~cyl)
統(tǒng)計(jì)信息顯示
可通過(guò)stat_summary()
疊加顯示均值等統(tǒng)計(jì)量:
ggplot(iris, aes(x = Species, y = Sepal.Length)) + geom_boxplot() + stat_summary(fun = mean, geom = "point", shape = 18, size = 3, color = "red")
水平箱線圖
交換x/y映射即可創(chuàng)建水平箱線圖:
ggplot(iris, aes(y = Species, x = Sepal.Length)) + geom_boxplot()
完整參數(shù)列表
geom_boxplot()
支持的完整美學(xué)參數(shù)(aesthetics)包括:
x
:分類(lèi)變量(必需)y
:連續(xù)變量(必需)lower
/upper
:自定義箱體范圍middle
:自定義中位數(shù)線ymin
/ymax
:自定義須線范圍group
:強(qiáng)制分組變量weight
:加權(quán)箱線圖
主題定制
通過(guò)theme()
函數(shù)可精細(xì)調(diào)整標(biāo)題、坐標(biāo)軸等元素:
ggplot(iris, aes(x = Species, y = Sepal.Length)) + geom_boxplot() + labs(title = "鳶尾花萼片長(zhǎng)度分布") + theme_minimal() + theme(axis.text.x = element_text(angle = 45, hjust = 1))
# 加載必要的庫(kù) library(ggplot2) # 創(chuàng)建示例數(shù)據(jù) df <- data.frame( group = rep(c("A", "B", "C"), each = 100), value = c(rnorm(150, mean = 0), rnorm(60, mean = 1), rnorm(400, mean = 2)) ) # 繪制箱線圖 p <- ggplot(df, aes(x = group, y = value)) + geom_boxplot(width = 0.6, fill = "white", color = "black") + # 使用白色填充,黑色邊框 labs(title = "Boxplot of Values by Group", # 標(biāo)題 x = "Group", # X軸標(biāo)簽 y = "Value") + # Y軸標(biāo)簽 theme_minimal() + # 使用簡(jiǎn)潔主題 theme(plot.title = element_text(size = 16, face = "bold", hjust = 0.5), # 標(biāo)題樣式 axis.title = element_text(size = 14, face = "bold"), # 軸標(biāo)題樣式 axis.text = element_text(size = 12), # 軸刻度標(biāo)簽樣式 legend.position = "none", axis.line = element_line(color = "black") ) # 顯示圖像 print(p) # 保存為高分辨率圖像 ggsave("boxplot.png", plot = p, width = 8, height = 6, dpi = 300)
到此這篇關(guān)于R語(yǔ)言編程繪圖-箱線圖的文章就介紹到這了,更多相關(guān)R語(yǔ)言箱線圖內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
R語(yǔ)言ggplot2?title設(shè)置教程(main,axis和legend?titles)
ggplot2是一個(gè)強(qiáng)大的作圖工具,它可以讓你不受現(xiàn)有圖形類(lèi)型的限制,創(chuàng)造出任何有助于解決你所遇到問(wèn)題的圖形,下面這篇文章主要給大家介紹了關(guān)于R語(yǔ)言ggplot2?title設(shè)置(main,axis和legend?titles)的相關(guān)資料,需要的朋友可以參考下2023-02-02R語(yǔ)言與格式,日期格式,格式轉(zhuǎn)化的操作
這篇文章主要介紹了R語(yǔ)言與格式,日期格式,格式轉(zhuǎn)化的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-04-04R語(yǔ)言關(guān)于二項(xiàng)分布知識(shí)點(diǎn)總結(jié)
在本篇內(nèi)容里小編給大家整理的是一篇關(guān)于R語(yǔ)言關(guān)于二項(xiàng)分布知識(shí)點(diǎn)總結(jié)內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。2021-05-05R語(yǔ)言邏輯型運(yùn)算的實(shí)現(xiàn)
本文主要介紹了R語(yǔ)言邏輯型運(yùn)算,邏輯型是 R 的基本數(shù)據(jù)類(lèi)型之一,只有兩個(gè)值 TRUE 和 FALSE, 缺失時(shí)為 NA,具有一定的參考價(jià)值,感興趣的可以了解一下2022-03-03R語(yǔ)言數(shù)據(jù)結(jié)構(gòu)之矩陣、數(shù)組與數(shù)據(jù)框詳解
進(jìn)行數(shù)據(jù)分析的第一步是先拿到數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于R語(yǔ)言數(shù)據(jù)結(jié)構(gòu)之矩陣、數(shù)組與數(shù)據(jù)框的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-07-07R語(yǔ)言-計(jì)算平均值不同函數(shù)的區(qū)別說(shuō)明
這篇文章主要介紹了R語(yǔ)言-計(jì)算平均值不同函數(shù)的區(qū)別說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-04-04