Python編程matplotlib繪圖挑鉆石seaborn小提琴和箱線圖
想不到大家都這么喜歡用python給女朋友挑鉆石,所以我又寫了個續(xù)。
如果看過之前一篇用python挑鉆石的文章,那么可以直接從箱線圖開始讀。
seaborn是matplotlib的補充包,提供了一系列高顏值的figure,并且集成了多種在線數據集,通過sns.load_dataset()
進行調用,可供學習,如果網絡不穩(wěn)定,可下載到本地,然后在調用的時候使用把cache
設為True
。
其中,diamonds
數據集中包含了鉆石數據,總計十項,分別是[重量/克拉]carat
、切割水平cut
、顏色color
、透明度clarity
、深度depth
、table
、價格price
以及x
、y
、z
方向的尺寸。
畫圖第一步就是導入包和數據。
import seaborn as sns import matplotlib.pyplot as plt # 本地加載數據集 dia = sns.load_dataset("diamonds",data_home="seaborn-data", cache=True) # 以上幾行代碼后面不再重復書寫
箱線圖
現在我們想知道Premium, Fair, Very Good, Good, Ideal這五種切割方式所對應的價格區(qū)間,那么最直接的想法是做一個箱線圖,就類似K線那種圖。
這個圖中,箱和線描述了五個統(tǒng)計量:最小非異常值、第一四分位數(25%)、中位數、第三四分位數(75%)以及非異常最大值。而最大值上面的那些點,則為異常值??梢?,超過1.5萬刀的鉆石屬于異類。
>>> sns.boxplot(x="cut",y="price",data=dia,color='lightblue',fliersize=0.25) >>> plt.show()
其中,fliersize
表示異常值的尺寸。
增強箱線圖
箱線圖盡管已經可以描述一定的分布特性,但是還不夠,畢竟只有5個統(tǒng)計量。
sns中提供了增強版的箱線圖:boxenplot
在這個圖中,將價格區(qū)間進行了劃分,每個價格區(qū)間中,箱子越寬則代表樣本越多。
sns.boxenplot(x="cut",y="price",data=dia, palette="ch:rot=-.5,d=.3_r") plt.show()
小提琴圖
如果想再細致一點,那么就得用小提琴圖了
sns.violinplot(x="cut",y="price",data=dia) sns.despine(left=True)
這樣一看,切割最好的鉆石,價格區(qū)間竟然以1000左右為主,盡管離譜,但也很真實了。
以上就是Python編程matplotlib繪圖挑鉆石seaborn小提琴和箱線圖的詳細內容,更多關于matplotlib挑鉆石seaborn小提琴和箱線圖的資料請關注腳本之家其它相關文章!
相關文章
淺談tensorflow1.0 池化層(pooling)和全連接層(dense)
本篇文章主要介紹了淺談tensorflow1.0 池化層(pooling)和全連接層(dense),小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-04-04Python 使用threading+Queue實現線程池示例
今天小編就為大家分享一篇Python 使用threading+Queue實現線程池示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12