python——matplotlib庫


matplotlib庫:一個優秀的數據可視化第三方庫

文檔:https://matplotlib.org/users/index.html

樣例:https://matplotlib.org/gallery/index.html

一、matplotlib庫簡介

  matplotlib由各種可視化類構成,內部結構復雜,其受matlab啟發(怪不得很像matlab)。

  matplotlib.pyplot是繪制各類可視化圖形的命令子庫,用戶可通過調用pyplot使用Matplotlib中所有可視化的類。

  matplotlib庫的引用:import matplotlib.pyplot as plt

二、matplotlib庫中的各類主要函數

  1、pyplot中的plot()函數:plt.plot(x, y, format_string ,**kwargs)

     參數解釋:

      x:表示x軸數據,列表或數組,可選。

      y:表示y軸數據,列表或數組。

      format_string:控制曲線的格式字符串,可選。有顏色字符、風格字符和標記字符組成。

               顏色字符可由英語顏色首字母或RGB(#000000)或灰度值(0-1)構成。

               風格字符:'-': 實線  '--':破折線  '-.':點划線  

                    ':':虛線  '' ''(空或者空格,單引號里夾單引號):無線條等。

             標記字符:在曲線中的每個數據點的標記方式。主要有:

                   '.'點 ','像素(極小點) 'o'圓心 '*'星型 '1'下花三角 

                   '2'上花三角  's'實心方型 'p'實心五角等。 

      **kwargs:第二組或跟多(x,y,fortmat_string)

           color:控制顏色,例,color='red';  

              linestyle:線條風格,例,linestyle='dashed';    marker:標記風格,例,marker='o'

           markerfececolor:標記顏色,例,markerfacecolor='blue';  

           markersize:例,標記尺寸,markersize=20   

     注:當繪制多條曲線時,各條曲線的x不能省略。當只繪制一條曲線,可省略x軸數據,

       y軸數據索引值可作為x軸,進而將圖形繪制出來。

  2、pyplot的中文顯示方法:

    兩種方法:

    a) 方法一:pyplot不默認支持中文顯示,需要pyplot.rcParams屬性修改字體實現。(修改全局字體)

      rcParams的屬性

        'font.family':用於顯示字體的名字   

          pyplot.rcParams['font.family'] :  'SimHei':中文黑體 'Kaiti':中文楷體 'LiSu':中文隸書 

                        'FangSong':中文仿宋 'YouYuan':中文幼圓 'STsong':華文宋體  等      

        'font.style'  :字體風格,正常是 'normal' 或 斜體 'italic'

        'font.size'   :字體大小,整數字號或者 'large' ,'x-small'


    b) 方法二:在有中文輸出的地方,增加一個屬性:fontproperties。(修改某處字體,推薦這種方法)

       例如:ptl.xlabel(' x軸 標簽 ',  fontproperties='SimHei', fontsize=20 )  //表示此處字體為黑體,大小為20

  

  3、pyplot的文本顯示:

函數 說明
plt.xlabel() 對x軸增加文本標簽
plt.ylabel() 對y軸增加文本標簽
plt.title() 對圖形整體增加文本標簽
plt.text() 在任意位置增加文本
plt.annotate() 在圖形中增加帶箭頭的注解

 

 

 

 

 

 

 

 

 

    a) plt.xlabel( s, **args)    plt.ylabel(s, **args)  plt.title(s, **args)

       參數解釋 :s便簽內容,其他的參數可以是字體,字號,顏色等,具體查閱文檔。

    b) plt.text( x, y, s,fontsize,**args ) 

       參數解釋:x,y  表示文本位置,s表示文本內容,以及其他屬性,具體查閱文檔。

    c) plt.annotate( s, xy=arrow_crd, xytext=text_crd , arrowprops=dict ) 

       參數解釋:

        s:表示注釋內容。

        xy:一個坐標元組,表示箭頭的位置。

        xytext:一個坐標元組,表示注解文本的位置。

        arrowprops:字典類型,定義了箭頭的一些屬性。

 

  4、pyplot的自繪圖區域:

      a) plt.subplot2grid(GridSpec, CurSpec, colspan=1, rowspan=1 )

        理念:設定網絡,選中網絡,確定選中行列區域數量,編號從0開始。

        參數解釋:
         GridSpec:一個二元元組(x,y),將繪圖區域分成x行y列。

         CurSpec:一個二元元組(m,n ),選中第m行,n列網格作為當前繪圖區域。

         colspan=p ,rowspan=q :類似於html中的<table>標簽,合並第n列的第n+p-1列,合並第q行到第q+m-1行。

      b) plt.subplot()=subplot(nrows, ncols, index, **kwargs)

         參數解釋:ncows,ncols,index:表示將繪圖區分成nrows行ncols列,當前繪圖區處於第index個網格

              index從1開始

三、pyplot常用基礎圖表函數

函數 說明
plt.plot(x,y,fmt) 繪制一個坐標圖
plt.boxplot(data,notch,position) 繪制一個箱形狀圖
plt.bar(left,height,width,bottom) 繪制一個條形圖
plt.barsh(width,bottom,left,height) 繪制一個橫向條i形圖
plt.polar(theta,r) 繪制極坐標
plt.pie(data,explode) 繪制餅圖
plt.psd(x,NFFT=256,pad_to,Fs) 繪制功率譜密度圖
plt.specgram(x,NFFR=256,pad_to,F) 繪制譜圖
plt.cohere( x, y,NFFT=256,Fs  ) 繪制X-Y相關性函數
plt.scatter(x,y) 繪制散點圖,其中,x和y長度相同
plt.step(x,y, where ) 繪制步階圖
plt.hist( x, bins , normed ) 繪制直方圖
plt.contour(X,Y ,Z,N ) 繪制等值圖
plt.vlines() 繪制垂直圖
plt.stem(x,y,linefmt,markerfmt) 繪制柴火圖
plt.plot_data() 繪制數據日期

 


免責聲明!

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



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