python科學計算庫


一.numpy庫和matplotlib庫的學習

  (1)numpy庫介紹:科學計算包,支持N維數組運算、處理大型矩陣、成熟的廣播函數庫、矢量運算、線性代數、傅里葉變換、隨機數生成,並可與C++/Fortran語言無縫結合

      np.array([1,2,3])列表轉換為數組;np.array((1,2,3))元組轉換為數組; np.array(range(5))把range對象轉換為數組;np.arange(8)類似於內置的range()函數

      np.linspace(0,10,11,endpoint = False)等差數組不包含終點

 

  (2)matplotlib庫介紹:是Python編程語言及其數值數學擴展包 NumPy的可視化操作界面。它為利用通用的圖形用戶界面工具包,如Tkinter, wxPython, Qt或GTK+向應用程序嵌入式繪圖提供了應用程序接口(API)。此外,matplotlib還有一個基於圖像處理庫(如開放圖形庫OpenGL)的pylab接口,其設計與MATLAB非常類似--盡管並不怎么好用。SciPy就是用matplotlib進行圖形繪制。

二.兩個庫的結合使用實例

matplotlib.rcParams['font.family']='SimHei' #設置默認字體
matplotlib.rcParams['font.sans-serif']=['SimHei'] #設置默認字體
labels = np.array(['第一周','第二周','第三周','第四周','第五周','第六周','第七周']) #
nAttr = 7 #邊數
data = np.array([0,100,90,90,100,80,80]) #數據值
angles = np.linspace(0,2*np.pi,nAttr,endpoint=False) #角度設置,0-2PI,分隔7次
data = np.concatenate((data,[data[0]]))  #將數據和角度的數組首尾閉合,便於用plot函數繪制
angles = np.concatenate((angles,[angles[0]]))
fig = plt.figure(facecolor="pink")   #圖形外的周邊顏色
plt.subplot(111,polar=True)    #建立極坐標系的子分區
plt.plot(angles,data,'bo-',color='g',linewidth=2) #按照角度和數據畫出不規則多邊形
plt.fill(angles,data,facecolor='g',alpha=0.25)  #填充顏色
plt.thetagrids(angles*180/np.pi,labels)  #設置標簽例如第X周
plt.figtext(0.52,0.95,'鄭智尛尛',ha='center') #設置標題
plt.grid(True)
plt.savefig('dota_radar.JPG')
plt.show()

  


免責聲明!

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



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