PYTHON繪製雷達圖程式碼例項
阿新 • • 發佈:2020-01-09
這篇文章主要介紹了PYTHON繪製雷達圖程式碼例項,文中通過示例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
1、雷達圖
import matplotlib.pyplot as plt import numpy as np values = [0.09,-0.05,0.20,-0.02,0.08,0.09,0.03,0.027] x = np.linspace(0,2*np.pi,9)[:-1] c = np.random.random(size=(8,3)) fig = plt.figure() plt.axes(polar=True) #獲取當前的axes print(plt.gca()) #繪圖 plt.bar(x,values,width=0.5,color=c,align='center') plt.scatter(x,marker='o',c='black') #新增文字 plt.figtext(0.03,0.7,s='陸地面積增長指數',fontproperties='KaiTi',fontsize=22,rotation='vertical',verticalalignment='center',horizontalalignment='center') plt.ylim(-0.05,0.25) labels = np.array(['省1','省2','省3','省4','省5','省6','省7','研究區']) dataLength = 8 angles = np.linspace(0,dataLength,endpoint=False) plt.thetagrids(angles * 180/np.pi,labels,fontsize=18) #添加註釋 # plt.annotate(s='省',xy=(0,0.09),xytext=(0,0.28),fontsize=18) # plt.annotate(s='省',-0.05),xytext=(np.pi/4,0.20),xytext=(np.pi/2,-0.02),xytext=(3*np.pi/4,0.33),0.08),xytext=(np.pi,0.38),xytext=(np.pi*5/4,0.35),fontsize=18) # plt.annotate(s='前江省',0.03),xytext=(np.pi*3/2,0.30),fontsize=18) # plt.annotate(s='研究區',0.027),xytext=(np.pi*7/4,fontsize=18) #設定網格線樣式 plt.grid(c='gray',linestyle='--',) # y1 = [-0.05,0.0,0.05,0.10,0.15,0.25] # lai=fig.add_axes([0.12,0.01,0.8,0.98]) # lai.patch.set_alpha(0.25) # lai.set_ylim(-0.05,0.25) #顯示 plt.show()
結果:
2、例項2
import matplotlib.pyplot as plt import numpy as np plt.rcParams['font.sans-serif'] = ['SimHei'] # 圖例中文問題 plt.rcParams['axes.unicode_minus'] = False #正負號問題 x= np.array(['1省','2省','3省','4省','5省','6省','7省','研究區']) y1 = np.array([5.5,7.2,17.3,15.0,10.8,21.8,3.4,81.4]) y2 = [0,-27.5,-3.9,-18.0,-0.2,-1.4,-1.7,-52.1] y3 = [5.5,-20.2,13.4,-2.9,10.6,20.4,1.7,28.5] loc=[0.12,0.65,0.6] plt.axes(loc) plt.bar(x,y1,0.4,label=u'退') plt.bar(x,y2,label=u'進') plt.plot(x,y3,markersize='6',c='black') y=np.array([-50,50]) plt.xticks(x,fontsize=8) plt.yticks(y) plt.grid(c='gray',alpha=0.25) plt.figtext(0.02,0.45,s='變化(km2)',fontsize=14,horizontalalignment='center') #frameon=False 去掉圖例邊框 plt.legend(loc='center',bbox_to_anchor=(1.2,0.5),ncol=1,frameon=False) plt.show()
結果:
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。