python中seaborn画swarm图_Python可视化 | Seaborn5分钟入门(四)——stripplot和swarmplot
微信公眾號:「Python讀財」
如有問題或建議,請公眾號留言
Seaborn是基于matplotlib的Python可視化庫。 它提供了一個高級界面來繪制有吸引力的統計圖形。Seaborn其實是在matplotlib的基礎上進行了更高級的API封裝,從而使得作圖更加容易,不需要經過大量的調整就能使你的圖變得精致。
注:所有代碼均在IPython notebook中實現
stripplot(分布散點圖)
先總覽一下stripplot的API: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)
接下來就直接上代碼演示,首先導入相應的包,這個大家應該都很熟悉了。import?seaborn?as?sns
%matplotlib?inline
sns.set(font_scale=1.5,style="white")
sns.set_context({"figure.figsize":(10,8)})
下面是本次演示所使用的數據集:data=sns.load_dataset("tips")
data.head()
我們先來看一下stripplot是什么樣的sns.stripplot(x="time",y="total_bill", data=data)
可以看到stripplot的作圖原理就是按照x屬性所對應的類別分別展示y屬性的值,適用于分類數據。上圖就是不同飯點的賬單總金額的散點圖。
接下來講解一下stripplot的主要參數,在這里我們只講stripplot特有的一些參數,其他一些seaborn中常見參數的介紹可以翻看之前的文章。
x:設置分組統計字段
y:設置分布統計字段
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的演示就到此為止
swarmplot(分簇散點圖)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學習交流群哦!
總結
以上是生活随笔為你收集整理的python中seaborn画swarm图_Python可视化 | Seaborn5分钟入门(四)——stripplot和swarmplot的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 惠组词和拼音 惠字读音及解释
- 下一篇: python安装运行时提示不是内部或外部