Python利用matplotlib.pyplot.boxplot()繪制箱型圖實(shí)例代碼
一、matplotlib.pyplot.boxplot()語(yǔ)法
boxplot(x, notch=None, sym=None, vert=None, whis=None, positions=None, widths=None, patch_artist=None, bootstrap=None, usermedians=None, conf_intervals=None, meanline=None,showmeans=None, showcaps=None, showbox=None, showfliers=None, boxprops=None, labels=None, flierprops=None, medianprops=None, meanprops=None, capprops=None, whiskerprops=None, manage_ticks=True, autorange=False, zorder=None, *, data=None)
plt.boxplot(
x, # 指定要繪制箱線圖的數(shù)據(jù)
notch=True or False, # 是否是凹口的形式展現(xiàn)箱線圖,默認(rèn)非凹口
sym, # str值,指定異常點(diǎn)的形狀,默認(rèn)為+號(hào)顯示
vert=True or False, # 是否需要將箱線圖垂直擺放,默認(rèn)True垂直擺放
whis, # float值,指定上下須與上下四分位的距離,默認(rèn)為1.5倍的四分位差
bootstrap, # int值,指定引導(dǎo)置信區(qū)間切口箱線圖的中間位置
positions, # 指定箱線圖的位置 默認(rèn)為[0,1,2…]
widths, # 指定箱線圖的寬度,默認(rèn)值:0.5
patch_artist=True or False, # 是否填充箱體的顏色 默認(rèn)值False不填充
labels, # 為箱線圖添加標(biāo)簽,類似于圖例的作用
manage_ticks=True or False, # 如果為True,刻度位置和標(biāo)簽將被調(diào)整為匹配箱線圖的位置。默認(rèn)值:True
showmeans=True or False, # 是否顯示均值,默認(rèn)值:False不顯示
meanline=True or False, # 是否用線的形式表示均值,默認(rèn)值False用點(diǎn)來(lái)表示
zorder, # 箱線圖的順序
showcaps=True or False, # 是否顯示箱線圖頂端和末端的兩條線,默認(rèn)值True顯示
showbox=True or False, # 是否顯示箱線圖的箱體,默認(rèn)值True顯示;
showfliers=True or False, # 是否顯示異常值,默認(rèn)值True顯示;
boxprops, # 設(shè)置箱體的屬性,如邊框色,填充色等;
flierprops, # 設(shè)置異常值的屬性,如異常點(diǎn)的形狀、大小、填充色等;
medianprops, # 設(shè)置中位數(shù)的屬性,如線的類型、粗細(xì)等;
meanprops, # 設(shè)置均值的屬性,如點(diǎn)的大小、顏色等;
capprops, # 設(shè)置箱線圖頂端和末端線條的屬性,如顏色、粗細(xì)等;
whiskerprops,# 設(shè)置胡須的屬性,如顏色、粗細(xì)、線的類型等
)二、繪制箱型圖
①繪制簡(jiǎn)單箱型圖
import matplotlib.pyplot as plt import numpy as np data=[np.random.normal(0,std,100) for std in range(1,4)] plt.boxplot(data) plt.show()

②各個(gè)參數(shù)繪制箱型圖
(1)notch參數(shù)(bool值,是否凹口的形式展現(xiàn)箱線圖,默認(rèn)值False非凹口)
import matplotlib.pyplot as plt
data=[np.random.normal(0,std,100) for std in range(1,4)]
fig=plt.figure()
# notch=True凹口的形式
ax1=fig.add_subplot(121)
plt.boxplot(data,notch=True)
plt.title('凹口的形式',size=20)
# notch=False非凹口的形式
ax2=fig.add_subplot(122)
plt.boxplot(data,notch=False)
plt.title('非凹口的形式',size=20)
plt.show()
(2)sym(str,指定異常點(diǎn)的形狀,默認(rèn)為+號(hào)顯示)
import matplotlib.pyplot as plt import numpy as np data=[np.random.normal(0,std,100) for std in range(1,4)] plt.boxplot(data,sym='^') plt.show()

(3)vert參數(shù)(bool值,是否需要將箱線圖垂直擺放,默認(rèn)True垂直擺放)
import matplotlib.pyplot as plt
data=[np.random.normal(0,std,100) for std in range(1,4)]
fig=plt.figure()
# vert=True箱型圖垂直擺放
ax1=fig.add_subplot(121)
plt.boxplot(data,vert=True)
plt.title('垂直擺放',size=20)
# vert=False箱型圖水平擺放
ax2=fig.add_subplot(122)
plt.boxplot(data,vert=False)
plt.title('水平擺放',size=20)
plt.show()
(4)widths參數(shù)(float值,指定箱線圖的寬度,默認(rèn)值:0.5)
import matplotlib.pyplot as plt import numpy as np data=[np.random.normal(0,std,100) for std in range(1,4)] plt.boxplot(data,widths=[0.3,0.6,0.5]) plt.show()

(5)patch_artist(bool值,是否填充箱體顏色,默認(rèn)值:False不填充)
import matplotlib.pyplot as plt
data=[np.random.normal(0,std,100) for std in range(1,4)]
fig=plt.figure()
# patch_artist=True填充箱體顏色
ax1=fig.add_subplot(121)
plt.boxplot(data,patch_artist=True)
plt.title('填充箱體顏色',size=20)
# patch_artist=False不填充箱體顏色
ax2=fig.add_subplot(122)
plt.boxplot(data,patch_artist=False)
plt.title('不填充箱體顏色',size=20)
plt.show()
(6)showmeans參數(shù)(bool值,是否顯示均值,默認(rèn)值False不顯示)
import matplotlib.pyplot as plt
data=[np.random.normal(0,std,100) for std in range(1,4)]
fig=plt.figure()
# showmeans=True顯示均值
ax1=fig.add_subplot(121)
plt.boxplot(data,showmeans=True)
plt.title('顯示均值',size=20)
# showmeans=False不顯示均值
ax2=fig.add_subplot(122)
plt.boxplot(data,showmeans=False)
plt.title('不顯示均值',size=20)
plt.show()
(7)meanline參數(shù)(bool值,是否用線的形式表示均值,默認(rèn)值False用點(diǎn)來(lái)表示)
注意:只有當(dāng)showmeans=True時(shí)(顯示均值時(shí)),才看得見(jiàn)效果。
import matplotlib.pyplot as plt
data=[np.random.normal(0,std,100) for std in range(1,4)]
fig=plt.figure()
# meanline=True用線顯示均值
ax1=fig.add_subplot(121)
plt.boxplot(data,showmeans=True,meanline=True)
plt.title('用線顯示均值',size=20)
# meanline=False用點(diǎn)顯示均值
ax2=fig.add_subplot(122)
plt.boxplot(data,showmeans=True,meanline=False)
plt.title('用點(diǎn)顯示均值',size=20)
plt.show()
(8)showcaps參數(shù)(bool值,是否顯示箱線圖頂端和末端的兩條線,默認(rèn)值True顯示)
import matplotlib.pyplot as plt
data=[np.random.normal(0,std,100) for std in range(1,4)]
fig=plt.figure()
# showcaps=True顯示箱線圖頂端和末端的兩條線
ax1=fig.add_subplot(121)
plt.boxplot(data,showcaps=True)
plt.title('顯示',size=20)
# showcaps=False不顯示箱線圖頂端和末端的兩條線
ax2=fig.add_subplot(122)
plt.boxplot(data,showcaps=False)
plt.title('不顯示',size=20)
plt.show()
(9)showbox參數(shù)(bool值,是否顯示箱線圖的箱體,默認(rèn)值True顯示)
import matplotlib.pyplot as plt
data=[np.random.normal(0,std,100) for std in range(1,4)]
fig=plt.figure()
# showbox=True顯示箱線圖的箱體
ax1=fig.add_subplot(121)
plt.boxplot(data,showbox=True)
plt.title('顯示',size=20)
# showbox=False不顯示箱線圖的箱體
ax2=fig.add_subplot(122)
plt.boxplot(data,showbox=False)
plt.title('不顯示',size=20)
plt.show()
(10)showfliers參數(shù)(bool值,是否顯示異常值,默認(rèn)值True顯示)
import matplotlib.pyplot as plt
data=[np.random.normal(0,std,100) for std in range(1,4)]
fig=plt.figure()
# showfliers=True顯示異常值
ax1=fig.add_subplot(121)
plt.boxplot(data,showfliers=True)
plt.title('顯示',size=20)
# showfliers=False不顯示異常值
ax2=fig.add_subplot(122)
plt.boxplot(data,showfliers=False)
plt.title('不顯示',size=20)
plt.show()
(11)boxprops參數(shù)(設(shè)置箱體的屬性,如邊框色,填充色等)
import matplotlib.pyplot as plt
data=[np.random.normal(0,std,100) for std in range(1,4)]
fig=plt.figure()
# sboxprops={'color':'r'} 設(shè)置箱體邊框色
ax1=fig.add_subplot(121)
plt.boxplot(data,boxprops={'color':'r'})
plt.title('設(shè)置箱體邊框色',size=20)
# patch_artist=True 填充箱體顏色
# boxprops={'facecolor':'pink'}設(shè)置箱體填充色
ax2=fig.add_subplot(122)
plt.boxplot(data,patch_artist=True,boxprops={'facecolor':'pink'})
plt.title('設(shè)置箱體填充色',size=20)
plt.show()
(12) flierprops參數(shù)(設(shè)置異常值的屬性,如異常點(diǎn)的形狀、大小、填充色等)
import matplotlib.pyplot as plt
import numpy as np
data=[np.random.normal(0,std,100) for std in range(1,4)]
plt.boxplot(data,flierprops={'marker':'*'})
plt.show()
(13)medianprops參數(shù)(設(shè)置中位數(shù)的屬性,如線的類型、粗細(xì)等)
import matplotlib.pyplot as plt
import numpy as np
data=[np.random.normal(0,std,100) for std in range(1,4)]
plt.boxplot(data,medianprops={'linestyle':':','linewidth':5,'color':'m'})
plt.show()
(14)meanprops參數(shù)(設(shè)置均值的屬性)
import matplotlib.pyplot as plt
import numpy as np
data=[np.random.normal(0,std,100) for std in range(1,4)]
plt.boxplot(data,showmeans=True,meanprops={'marker':'*'})
plt.show()
(15)capprops參數(shù)(設(shè)置箱線圖頂端和末端線條的屬性,如顏色、粗細(xì)等)
import matplotlib.pyplot as plt
import numpy as np
data=[np.random.normal(0,std,100) for std in range(1,4)]
plt.boxplot(data,
showmeans=True,
capprops={'linestyle':'--','color':'m','linewidth':3})
plt.show()
(16)whiskerprops參數(shù)(設(shè)置須的屬性,如顏色、粗細(xì)、線的類型等)
import matplotlib.pyplot as plt
import numpy as np
data=[np.random.normal(0,std,100) for std in range(1,4)]
plt.boxplot(data,
showmeans=True,
whiskerprops={'linestyle':'--','color':'m','linewidth':3})
plt.show()
總結(jié)
到此這篇關(guān)于Python利用matplotlib.pyplot.boxplot()繪制箱型圖的文章就介紹到這了,更多相關(guān)matplotlib.pyplot.boxplot()繪制箱型圖內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
tf.truncated_normal與tf.random_normal的詳細(xì)用法
本篇文章主要介紹了tf.truncated_normal與tf.random_normal的詳細(xì)用法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-03-03
解決pycharm 遠(yuǎn)程調(diào)試 上傳 helpers 卡住的問(wèn)題
今天小編就為大家分享一篇解決pycharm 遠(yuǎn)程調(diào)試 上傳 helpers 卡住的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-06-06
在python tkinter中Canvas實(shí)現(xiàn)進(jìn)度條顯示的方法
今天小編就為大家分享一篇在python tkinter中Canvas實(shí)現(xiàn)進(jìn)度條顯示的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-06-06
Python使用Gradio實(shí)現(xiàn)免費(fèi)的內(nèi)網(wǎng)穿透
內(nèi)網(wǎng)穿透是一種將內(nèi)部網(wǎng)絡(luò)服務(wù)暴露到公共網(wǎng)絡(luò)的技術(shù),可以讓外部用戶訪問(wèn)內(nèi)部網(wǎng)絡(luò)上的服務(wù),本文將介紹如何使用Gradio實(shí)現(xiàn)免費(fèi)的內(nèi)網(wǎng)穿透,需要的可以參考下2024-03-03
Python Pygame實(shí)戰(zhàn)之趣味籃球游戲的實(shí)現(xiàn)
這篇文章主要為大家分享了一個(gè)基于Python和Pygame實(shí)現(xiàn)的一個(gè)趣味籃球游戲,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定幫助,需要的可以參考一下2022-04-04

