用seaborn繪制散點圖


       散點圖可以顯示觀察數據的分布,描述數據的相關性,matlibplot也可以繪制散點圖,不過我一般優先使用seaborn庫的sctterplot()繪制,下面就介紹一下如何用seaborn.scatterplot()繪制散點圖。

1. sctterplot()參數說明

  • x,y:輸入的繪圖數據,必須是數值型數據
  • hue:對輸入數據進行分組的序列,使用不同顏色對各組的數據加以區分。下面是一個例子
ar=np.random.randn(20,4) df=pd.DataFrame(a,columns=['a','b','c','d']) df['e']=pd.Series(['one','one','one','one','one','one','two','two','two','two','two','two','two','two', 'three','three','three','three','three','three']) sns.scatterplot(df['a'],df['b'],hue=df['e'])

                              

  • size:對輸入數據進行分組的序列,使用不同點尺寸對各組的數據加以區分。下面是一個例子
#sns.scatterplot(df['a'],df['b'],size=df['e']) #左圖,沒有加上hue參數 sns.scatterplot(df['a'],df['b'],hue=df['e'],size=df['e']) #右圖,加上hue參數

    

  • style:對輸入數據進行分組的序列,使用不同點標記對各組的數據加以區分。下面是一個例子
sns.scatterplot(df['a'],df['b'],hue=df['e'],size=df['e'],style=df['e']) 

                                    

  • data:pandas.DataFrame型參數,不能包含非數值型數據,否則會報錯。使用該參數的好處為下列兩種情況之一
#第一種情況,快捷的繪制DataFrame內每一列的數據 sns.scatterplot(data=df) #第二種情況,輸入繪圖的x,y變量時,可以寫簡單一點 sns.scatterplot('a','b',data=df)
  • palette:在對數據進行分組時,設置不同組數據的顯示顏色。hue參數使用的是默認的顏色,如果需要更多的顏色選項,則需要通過調色盤來設置,可以使用seaborn.color_palette()函數來設置顏色
  • hue_order:在使用hue參數對數據進行分組時,可以通過該參數設置數據組的顯示順序,例如

 

num=np.random.randn(10,4) df=pd.DataFrame(num,columns=['a','b','c','d']) df['e']=pd.Series(list('xxxyyyzzzz')) sns.scatterplot('a','b',hue=df['e'],data=df,hue_order=['z','y','x'])
  • hue_norm:該參數的作用我暫時沒弄明白,先跳過
  • sizes:當使用size參數、以不同尺寸顯示不同組數據時,可以通過sizes參數來設定具體的尺寸大小。該參數可以傳入一個尺寸序列,也可以傳入一個包含兩個元素的元祖,分別制定尺寸的上下限。
  • size_order:和hue_order參數作用一樣,不過設置的是尺寸的顯示順序
  • size_norm:和hue_norm參數一樣,沒有弄明白是什么意思
  • markers:當使用style參數、以不同的標記顯示不同組數據時,可以通過該參數設置不同組數據的標記
  • style_order:和hue_order參數作用一樣,不過設置的是標記的顯示順序
  • {x,y}_bins:沒弄明白啥作用


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM