日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python雷达图详解_python的matplotlib---雷达图

發布時間:2025/3/20 python 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python雷达图详解_python的matplotlib---雷达图 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.先了解一下什么是極坐標

極點:以圓的中心作為極點O,

極軸:以0°的方向引一條射線極軸Ox,

極徑:選定一個長度單位r

極角:以Ox正方向開始計算角度θ(通常取逆時針方向)

極坐標:以極點O作為圓心,以極晝Ox的方向作為起點,以極徑r作為半徑,畫一個以極角θ的扇形,最終圓規腳定的位置就是極坐標M

2.利用matplotlib畫出一個點

importmatplotlib.pyplot as pltimportnumpy as np"""20:以20作為半徑

ylim(0,100):設置極軸的范圍

lw=2:表示極坐標圖案的寬度

ro:繪制的極坐標圖形為紅色圓點"""plt.polar(0.25*np.pi,20,"ro",lw=2)

plt.ylim(0,100)

plt.show()

3.利用matplotlib畫多個點并連成封閉圖案

importmatplotlib.pyplot as pltimportnumpy as np"""繪制多個點,并且第一個點與最后一個點相同,使其成為閉合圖案"""theta= np.array([0.25,0.75,1,1.5,0.25])

r= [20,60,40,80,20]

plt.polar(theta*np.pi,r,"r-",lw=2)

plt.ylim(0,100)

plt.show()

4.填充顏色

importmatplotlib.pyplot as pltimportnumpy as np#使用ggplot的繪圖風格

plt.style.use('ggplot')#構建角度與值

theta = np.array([0.25,0.75,1,1.5,0.25])

r= [20,60,40,80,20]

plt.polar(theta*np.pi,r,"r-",lw=1)#設置填充顏色,并且透明度為0.75

plt.fill(theta*np.pi,r,'r',alpha=0.75)

plt.ylim(0,100)#顯示網格線

plt.grid(True)

plt.show()

5.繪制多個數據的雷達圖

importnumpy as npimportmatplotlib.pyplot as plt#中文和負號的正常顯示

plt.rcParams['font.sans-serif'] = 'Microsoft YaHei'plt.rcParams['axes.unicode_minus'] =False#使用ggplot的風格繪圖

plt.style.use('ggplot')#構造數據

values = [3.2,2.1,3.5,2.8,3,4]

values_1= [2.4,3.1,4.1,1.9,3.5,2.3]

feature= ['個人能力','QC知識',"解決問題能力","服務質量意識","團隊精神","IQ"]

N=len(values)#設置雷達圖的角度,用于平分切開一個平面

angles = np.linspace(0,2*np.pi,N,endpoint=False)#使雷達圖封閉起來

values =np.concatenate((values,[values[0]]))

angles=np.concatenate((angles,[angles[0]]))

values_1=np.concatenate((values_1,[values_1[0]]))#繪圖

fig =plt.figure()#設置為極坐標格式

ax = fig.add_subplot(111, polar=True)#繪制折線圖

ax.plot(angles,values,'o-',linewidth=2,label='活動前')

ax.fill(angles,values,'r',alpha=0.5)#填充顏色

ax.plot(angles,values_1,'o-',linewidth=2,label='活動后')

ax.fill(angles,values_1,'b',alpha=0.5)#添加每個特質的標簽

ax.set_thetagrids(angles*180/np.pi,feature)#設置極軸范圍

ax.set_ylim(0,5)#添加標題

plt.title('活動前后員工狀態')#增加網格紙

ax.grid(True)

plt.show()

總結

以上是生活随笔為你收集整理的python雷达图详解_python的matplotlib---雷达图的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。