小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

讓圖形變得精致:seaborn繪圖基礎

 進擊的可樂 2021-12-15

1、seaborn的優(yōu)點

  • 它簡化了復雜數(shù)據(jù)集的表示;

  • 可以輕松構建復雜的可視化,簡潔的控制matplotlib圖形樣式與幾個內置主題;

  • seaborn不可以替代matplotlib,而是matplotlib的很好補充;

2、seaborn的官網(wǎng)

學習某個知識點,最好的東西就是照著官網(wǎng)的提示學習,因為官網(wǎng)里面的知識點,夠完整、夠全面。seaborn的官網(wǎng)鏈接:http://seaborn.

3、seaborn的作者介紹

4、seaborn的縮寫為什么是sns,而不是sbn?

sns的使用來自于一個內部笑話,與美劇The West Wing有關。這部劇里有一個人物,名叫Samual Norman Seaborn,首字母簡寫為sns,因此最終簡寫為sns。

5、seaborn與matplotlib的關系?

seaborn是matplotlib的更高級的封裝。因此學習seaborn之前,首先要知道m(xù)atplotlib的繪圖原理。

我們知道,使用matplotlib繪圖,需要調節(jié)大量的繪圖參數(shù),需要記憶的東西很多。而seaborn基于matplotlib做了更高級的封裝,使得繪圖更加容易,它不需要了解大量的底層參數(shù),就可以繪制出很多比較精致的圖形。不僅如此,seaborn還兼容numpy、pandas數(shù)據(jù)結構,在組織數(shù)據(jù)上起了很大作用,從而更大程度上的幫助我們完成數(shù)據(jù)可視化。

最關鍵:seaborn是matplotlib的更高級的封裝。也就是說,對于matplotlib的那些調優(yōu)參數(shù)設置,也都可以在使用seaborn繪制圖形之后使用。
??

6、使用seaborn繪圖的3種方式

  • plt.style.use(“seaborn”):只是說調用了seaborn的繪圖樣式,并不能真正體現(xiàn)seaborn繪圖的好處。

  • sns.set():使用了這個方法后,所有之前寫過的matplotlib中的參數(shù)都還原了。因此,像設置中文字體顯示、設置負號的正常顯示,都必須放在sns.set()這句代碼之后。

  • 直接調用seaborn函數(shù)繪圖:這種方式能真正體現(xiàn)seaborn繪圖的優(yōu)勢,也是我們經常使用的繪圖方式。(最常用)

1)plt.style.use(“seaborn”)

df = pd.read_excel("data.xlsx",sheet_name="數(shù)據(jù)源")
df1 = df.groupby("品牌").agg({"銷售數(shù)量":np.sum})

# 使用matplotlib風格繪圖
plt.bar(x=df1.index,height=df1["銷售數(shù)量"],width=0.5,color="blue")
plt.savefig(r"G:\6Tipdm\2 python繪圖\seaborn\picture\seaborn繪圖方式_1",dpi=300)

# 使用seaborn風格繪圖
plt.style.use("seaborn")
plt.bar(x=df1.index,height=df1["銷售數(shù)量"],width=0.5,color="blue")
plt.savefig(r"G:\6Tipdm\2 python繪圖\seaborn\picture\seaborn繪圖方式_2",dpi=300)

結果如下:


2)sns.set()

這個方法里面有幾個參數(shù),但是在實際中,我們都使用默認值即可,因為默認參數(shù)繪圖就已經很好看啦,并不需要我們特意去設置。

① 常用參數(shù):sns.set(style=, context=, font_scale=)
style設置繪圖的樣式。
context一般使用默認樣式即可,不需要我們自己設置。默認是context=“notebook”。
font_scale控制坐標軸的刻度,一般設置為font_scale=1.2即可。
② 演示如下

df = pd.read_excel("data.xlsx",sheet_name="數(shù)據(jù)源")
df1 = df.groupby("品牌").agg({"銷售數(shù)量":np.sum})

# 使用matplotlib風格繪圖
plt.bar(x=df1.index,height=df1["銷售數(shù)量"],width=0.5,color="blue")
plt.savefig(r"G:\6Tipdm\2 python繪圖\seaborn\picture\seaborn繪圖方式_3",dpi=300)

# 使用seaborn風格繪圖
sns.set()
plt.rcParams["font.sans-serif"] = "SimHei"
plt.rcParams["axes.unicode_minus"] = False

plt.bar(x=df1.index,height=df1["銷售數(shù)量"],width=0.5,color="blue")
plt.savefig(r"G:\6Tipdm\2 python繪圖\seaborn\picture\seaborn繪圖方式_4",dpi=300)

結果如下:


3)直接調用seaborn函數(shù)繪圖(最常用):seaborn繪圖的優(yōu)勢體現(xiàn)

df = pd.read_excel("data.xlsx",sheet_name="數(shù)據(jù)源")

sns.set_style("dark")
plt.rcParams["font.sans-serif"] = ["SimHei"]
plt.rcParams["axes.unicode_minus"] = False
# 注意:estimator表示對分組后的銷售數(shù)量求和。默認是求均值。
sns.barplot(x="品牌",y="銷售數(shù)量",data=df,color="steelblue",orient="v",estimator=sum)
plt.savefig(r"G:\6Tipdm\2 python繪圖\seaborn\picture\seaborn繪圖方式_5",dpi=300)

結果如下:


注意:直接調用seaborn函數(shù)繪圖的好處在這個代碼中有很好的體現(xiàn)。可以看出,如果直接使用matplotlib中的代碼繪圖,需要先對數(shù)據(jù)集進行分組聚合,然后才能繪制最后的圖形。【優(yōu)勢】:直接使用sns.barplot()函數(shù)繪圖,barplot可以直接將 groupby 分組后的結果按照指定的匯總方式進行可視化展示,并不需要我們實現(xiàn)對數(shù)據(jù)進行處理。

    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多