微信公衆號:「Python讀財」
若有問題或建議,請公衆號留言
Seaborn是基於matplotlib的Python可視化庫。 它提供了一個高級界面來繪製有吸引力的統計圖形。Seaborn實際上是在matplotlib的基礎上進行了更高級的API封裝,從而使得做圖更加容易,不須要通過大量的調整就能使你的圖變得精緻。微信
注:全部代碼均在IPython notebook中實現學習
先總覽一下stripplot的API:spa
seaborn.stripplot(x=None, y=None, hue=None, data=None, order=None, hue_order=None, jitter=False, dodge=False, orient=None, color=None, palette=None, size=5, edgecolor='gray', linewidth=0, ax=None, *kwargs)
接下來就直接上代碼演示,首先導入相應的包,這個你們應該都很熟悉了。3d
import seaborn as sns %matplotlib inline sns.set(font_scale=1.5,style="white") sns.set_context({"figure.figsize":(10,8)})
下面是本次演示所使用的數據集:code
data=sns.load_dataset("tips") data.head()
咱們先來看一下stripplot是什麼樣的blog
sns.stripplot(x="time",y="total_bill", data=data)
能夠看到stripplot的做圖原理就是按照x屬性所對應的類別分別展現y屬性的值,適用於分類數據。上圖就是不一樣飯點的帳單總金額的散點圖。排序
接下來說解一下stripplot的主要參數,在這裏咱們只講stripplot特有的一些參數,其餘一些seaborn中常見參數的介紹能夠翻看以前的文章。ip
x:
設置分組統計字段資源
y:
設置分佈統計字段rem
jitter:
當數據點重合較多時,可用該參數作一些調整
sns.stripplot(x="time",y="total_bill",data=data,jitter=True)
能夠看到,以前重合的數據點分散開了
在對time屬性分類後,利用hue參數進行內部的分類
sns.stripplot(x="time",y="total_bill",data=data,jitter=True,hue="day")
那若是我想把組內的不一樣類別分開來顯示呢?這時候就用dodge參數
dodge:
控制組內分類是否完全分拆
sns.stripplot(x="time",y="total_bill",data=data,jitter=True,hue="day",dodge=True)
order:
對x參數所選字段內的類別進行排序以及篩選
sns.stripplot(x="time",y="total_bill",data=data,jitter=True, hue="day",dodge=True,order=["Dinner","Lunch"])
能夠看到x軸上本來的Dinner和Lunch類別的先後順序變了
sns.stripplot(x="time",y="total_bill",data=data,jitter=True, hue="day",dodge=True,order=["Dinner"])
能夠看到x軸上本來的Lunch類別沒有了,stripplot的演示就到此爲止
sns.swarmplot(x=None, y=None, hue=None, data=None, order=None, hue_order=None, dodge=False, orient=None, color=None, palette=None, size=5, edgecolor='gray', linewidth=0, ax=None, *kwargs)
swarmplot和stripplot的用法其實差很少,咱們來看看兩種圖之間有什麼區別,仍是使用以前的數據集。
sns.swarmplot(x="day",y="total_bill",data=data)
能夠看到swarmplot將不一樣類別的散點圖以樹狀來顯示,其餘參數用法和stripplot一致,下面簡單演示一下。
sns.swarmplot(x="day",y="total_bill",data=data,hue="sex",dodge=True)
sns.swarmplot(x="day",y="total_bill",data=data,hue="sex",dodge=True,palette="husl")
sns.swarmplot(y="day",x="total_bill",data=data,hue="sex",dodge=True,palette="husl")
有關stripplot和swarmplot的演示就到此結束了,想進一步學習的童鞋能夠查看Seaborn的官方文檔!以上內容是我結合官方文檔和本身的一點理解寫成的,有什麼錯誤你們能夠指出來並提提意見,共同交流、進步,也但願我寫的這些可以給閱讀完本文的你或或少的幫助!
關注個人公衆號「Python讀財」,後臺回覆「py」便可獲取Python學習資源禮包,還有Python學習交流羣哦!