中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

seaborn如何繪制雙變量聯合分布圖

發布時間:2022-12-27 16:47:47 來源:億速云 閱讀:155 作者:iii 欄目:開發技術

本文小編為大家詳細介紹“seaborn如何繪制雙變量聯合分布圖”,內容詳細,步驟清晰,細節處理妥當,希望這篇“seaborn如何繪制雙變量聯合分布圖”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

繪制雙變量聯合分布圖

有時我們不僅需要查看單個變量的分 布,同時也需要查看變量之間的聯系, 往往還需要進行預測等。這時就需要用到雙變量聯合分布了。

下面我們一起來看一下連續數值型數據雙變量之間的可視化方法。

在Seaborn中繪制連續數值型雙變量我們使用sns.jointplot():

 seaborn.jointplot(x, y, data=None, kind='scatter')
  • x、y:分別記錄x軸和y軸的數據名稱。

  • data:數據集,data的數據類型為DataFrame

  • kind:用于設置圖像的類型,可選的類型有: 'scatter' | 'reg' | 'resid' | 'kde' | 'hex',分別表示散點圖、回歸圖、殘差圖、 核密度圖和蜂巢圖。

散點圖

如果我們希望看一看數據中兩個變量在二維平面上之間的關系時, 則可以使用散點圖,因為散點圖可以幫助我們很容易地發現一些數據的分布規律。

 import numpy as np
 import seaborn as sns
 import pandas as pd
 import matplotlib.pyplot as plt
 df =pd.DataFrame({'x':np.random.normal(size=500),
                  'y':np.random.normal(size=500)})
 sns.jointplot(x='x',y='y',data=df,kind='reg')
 plt.show()

雙變量散點圖:

seaborn如何繪制雙變量聯合分布圖

  • 根據結果我們發現, sns.jointplot()函數可以顯示兩個變量之間的聯合關系以及每個單變量的分布

  • 我們把函數中的 kind 參數設置為'reg' 就可以做一些簡單的線性模型擬合

  • 并且在坐標系的上方和右側分別繪制了兩個變量的直方圖和核密度圖。

蜂巢圖

上面我們根據數據繪制了聯合散點圖,但是你會發 現兩個數據并沒有明確的線性關系,并且散點圖有 一個問題,就是相同的點會覆蓋在一起,導致我們 看不出來濃密和稀疏。 所以我們可以使用蜂巢圖查看一下數據的分布情況。

蜂巢圖的繪制還是使用seaborn.jointplot()函 數,只是將kind參數更該為hex即可。

 import numpy as np
 import seaborn as sns
 import pandas as pd
 import matplotlib.pyplot as plt
 df =pd.DataFrame({'x':np.random.normal(size=500),
                  'y':np.random.normal(size=500)})
 sns.jointplot(x='x',y='y',data=df,kind='hex')
 plt.show()

seaborn如何繪制雙變量聯合分布圖

蜂巢圖中每個六邊形表示一個范圍, 用顏色表示這個范圍內的數據量,顏 色越白的地方數據量越小,顏色越深 的地方表示數據量越大。 當數據比較大的時候該種方式,更容易找出數據的分布情況。

密度圖

在單變量分析的時候,我們繪制了單變量的概率密度曲線, 在雙變量中我們也可以使用密度圖來分析數據的分布情況。 密度圖的繪制還是使用seaborn.jointplot()函數,只是將 kind參數更該為kde即可。

 import numpy as np
 import seaborn as sns
 import pandas as pd
 import matplotlib.pyplot as plt
 df =pd.DataFrame({'x':np.random.normal(size=500),
                  'y':np.random.normal(size=500)})
 sns.jointplot(x='x',y='y',data=df,kind='kde')
 plt.show()

seaborn如何繪制雙變量聯合分布圖

根據圖形可以看出,雙變量密度圖是使用一些封閉 但是不規則的曲線來表示, 數據密度越高的地方顏色越深,數據密度越低的地方顏色越淺。

 g = sns.jointplot(data=x_data, x=x, y=y)
 g.plot_joint(sns.kdeplot, color="r", zorder=0, levels=6)
 g.plot_marginals(sns.rugplot, color="r", height=-.15, clip_on=False)

seaborn如何繪制雙變量聯合分布圖

 sns.jointplot(
     data=x_data, x=x, y=y,
     marker="+", s=100, marginal_kws=dict(bins=25, fill=False),
 )

seaborn如何繪制雙變量聯合分布圖

讀到這里,這篇“seaborn如何繪制雙變量聯合分布圖”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

遂溪县| 库伦旗| 保定市| 常德市| 西宁市| 沅陵县| 东宁县| 麻江县| 广平县| 巴南区| 朝阳区| 无为县| 松原市| 镇平县| 杭州市| 松滋市| 民权县| 湟中县| 河西区| 措勤县| 偏关县| 绥德县| 武隆县| 衡阳市| 岚皋县| 屏山县| 东阿县| 巴林左旗| 珲春市| 仁寿县| 宁津县| 定南县| 泗水县| 克拉玛依市| 清苑县| 普定县| 灯塔市| 福泉市| 鄂托克旗| 屏山县| 阜平县|