1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        【Python】一文學(xué)會(huì)Seaborn!

        共 2159字,需瀏覽 5分鐘

         ·

        2022-05-31 21:06

        • Matplotlib繪制一張美圖需要很多參數(shù)調(diào)整,于是就出現(xiàn)了high-level版的Seaborn,幾行代碼即可輸出美美的圖形,那么Seaborn是如何做到的?


        • Seaborn主要有兩種圖形實(shí)現(xiàn)方法Figure水平「下圖綠色格子中所有方法,如jointplot、JointGrid」、Axes水平「如stripplot、swarmplot等」,本文梳理Seaborn主要結(jié)構(gòu),助快速掌控Seaborn??
        Seaborn Overview
        Seaborn詳細(xì)文章??


        Figure水平方法

        此時(shí),通過(guò)seaborn.axisgrid.FacetGrid對(duì)象作圖,以displot為例,

        • 單個(gè)圖
        import?seaborn?as?sns
        import?pandas?as?pd
        penguins?=?sns.load_dataset("penguins")#導(dǎo)入數(shù)據(jù)

        g?=?sns.displot(data=penguins,
        ????????????????x="flipper_length_mm",
        ????????????????hue="species",
        ????????????????multiple="stack",
        ????????????????kind="hist")#一行代碼出圖
        sns.set(style='whitegrid',?font_scale=1.2)
        print(type(g))

        \ # 注意此處g對(duì)象類(lèi)型

        • 多子圖

        Figure水平多子圖一行代碼搞定,

        sns.displot(data=penguins,?x="flipper_length_mm",?hue="species",?col="species")
        • 矩陣圖 (pairplot)
        sns.pairplot(data=penguins,?hue="species")
        • 矩陣圖 (PairGrid)

        PairGrid可使矩陣圖更加個(gè)性化,

        g?=?sns.PairGrid(penguins,?diag_sharey=False)
        g.map_upper(sns.scatterplot)??#右上角做散點(diǎn)圖
        g.map_lower(sns.kdeplot)??#左下角做等高線圖
        g.map_diag(sns.histplot)??#中間做直方圖

        Axes水平方法

        此時(shí),直接在matplotlib.axes._subplots.AxesSubplot對(duì)象上作圖,以hisplot為例,

        • 單個(gè)圖
        import?seaborn?as?sns
        import?pandas?as?pd
        penguins?=?sns.load_dataset("penguins")

        g?=?sns.histplot(data=penguins,
        ?????????????????x="flipper_length_mm",
        ?????????????????hue="species",
        ?????????????????multiple="stack")
        sns.set(style='whitegrid',?font_scale=1.2)
        print(type(g))

        \ # 注意此處g對(duì)象類(lèi)型

        • 多子圖

        比較繁瑣,

        import?matplotlib.pyplot?as?plt
        f,?axs?=?plt.subplots(1,
        ??????????????????????2,
        ??????????????????????figsize=(8,?4),
        ??????????????????????gridspec_kw=dict(width_ratios=[4,?3]))
        sns.scatterplot(data=penguins,
        ????????????????x="flipper_length_mm",
        ????????????????y="bill_length_mm",
        ????????????????hue="species",
        ????????????????ax=axs[0])
        sns.histplot(data=penguins,
        ?????????????x="species",
        ?????????????hue="species",
        ?????????????shrink=.8,
        ?????????????alpha=.8,
        ?????????????legend=False,
        ?????????????ax=axs[1])
        f.tight_layout()
        • 從上面實(shí)例可知,在簡(jiǎn)單圖形上,F(xiàn)igure方法和Axes方式結(jié)果幾乎一樣,在多子圖繪制時(shí),F(xiàn)igure水平優(yōu)勢(shì)明顯;

        • 相比于jointplot/pairplot,JointGrid/PairGrid可以更個(gè)性化。

        • 本文簡(jiǎn)要介紹了Seaborn的主要方法,詳細(xì)可參考?xì)v史文章及官網(wǎng)。

        致謝:http://seaborn.pydata.org/index.html

        -END-

        往期精彩回顧




        瀏覽 62
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        評(píng)論
        圖片
        表情
        推薦
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            免费爱爱视频 | 北条麻纪无码视频 | 91丨豆花丨成人熟女 | 国产婬片lA片www777 | 天天日小妞爽 | 四虎永久影院 | 操逼逼逼逼逼逼逼 | 国产成人精品二三区麻豆 | 蜜臀久久99精品久久久老牛影视 | chinese叫床 |