最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

matplotlib繪制雷達(dá)圖的基本配置(萬(wàn)能模板案例)

 更新時(shí)間:2022年04月13日 10:31:02   作者:王小王-123  
本文主要介紹了matplotlib繪制雷達(dá)圖的基本配置(萬(wàn)能模板案例),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

介紹

雷達(dá)圖是以從同一點(diǎn)開(kāi)始的軸上表示的三個(gè)或更多個(gè)定量變量的二維圖表的形式顯示多變量數(shù)據(jù)的圖形方法。軸的相對(duì)位置和角度通常是無(wú)信息的。 雷達(dá)圖也稱(chēng)為網(wǎng)絡(luò)圖,蜘蛛圖,星圖,蜘蛛網(wǎng)圖,不規(guī)則多邊形,極坐標(biāo)圖或Kiviat圖。它相當(dāng)于平行坐標(biāo)圖,軸徑向排列。

應(yīng)用場(chǎng)景

用于成績(jī)的透視,比如查看你是否偏科,知曉你的興趣偏向于哪一方面

案例一(成績(jī)雷達(dá)圖重疊)

# coding=utf-8
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']     #顯示中文
plt.rcParams['axes.unicode_minus']=False       #正常顯示負(fù)號(hào)
 
results = [
    {"大學(xué)英語(yǔ)": 87, "高等數(shù)學(xué)": 79, "體育": 95, "計(jì)算機(jī)基礎(chǔ)": 92, "程序設(shè)計(jì)": 85},
    {"大學(xué)英語(yǔ)": 80, "高等數(shù)學(xué)": 90, "體育": 91, "計(jì)算機(jī)基礎(chǔ)": 85, "程序設(shè)計(jì)": 88}
]
data_length = len(results[0])
# 將極坐標(biāo)根據(jù)數(shù)據(jù)長(zhǎng)度進(jìn)行等分
angles = np.linspace(0, 2*np.pi, data_length, endpoint=False)
labels = [key for key in results[0].keys()]
score = [[v for v in result.values()] for result in results]
# 使雷達(dá)圖數(shù)據(jù)封閉
score_a = np.concatenate((score[0], [score[0][0]]))
score_b = np.concatenate((score[1], [score[1][0]]))
angles = np.concatenate((angles, [angles[0]]))
labels = np.concatenate((labels, [labels[0]]))
# 設(shè)置圖形的大小
fig = plt.figure(figsize=(8, 6), dpi=100)
# 新建一個(gè)子圖
ax = plt.subplot(111, polar=True)
# 繪制雷達(dá)圖
ax.plot(angles, score_a, color='g')
ax.plot(angles, score_b, color='b')
# 設(shè)置雷達(dá)圖中每一項(xiàng)的標(biāo)簽顯示
ax.set_thetagrids(angles*180/np.pi, labels)
# 設(shè)置雷達(dá)圖的0度起始位置
ax.set_theta_zero_location('N')  # E W S N SW SE NW NE
# 設(shè)置雷達(dá)圖的坐標(biāo)刻度范圍
ax.set_rlim(0, 100)
# 設(shè)置雷達(dá)圖的坐標(biāo)值顯示角度,相對(duì)于                                                                                                                                                                                                                                                                                                                                                                                            y               起始角度的偏移量
ax.set_rlabel_position(270)
ax.set_title("成績(jī)對(duì)比")
plt.legend(["張三", "李四"], loc='best')
plt.show()

案例二(成績(jī)雷達(dá)圖左右圖)

import numpy as np
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']     #顯示中文
plt.rcParams['axes.unicode_minus']=False       #正常顯示負(fù)號(hào)
 
results = [{"大學(xué)英語(yǔ)": 87, "高等數(shù)學(xué)": 79, "體育": 95, "計(jì)算機(jī)基礎(chǔ)": 92, "程序設(shè)計(jì)": 85},
   {"大學(xué)英語(yǔ)": 80, "高等數(shù)學(xué)": 90, "體育": 91, "計(jì)算機(jī)基礎(chǔ)": 85, "程序設(shè)計(jì)": 88}]
data_length = len(results[0])
angles = np.linspace(0, 2*np.pi, data_length, endpoint=False)
labels = [key for key in results[0].keys()]
score = [[v for v in result.values()] for result in results]
score_a = np.concatenate((score[0], [score[0][0]]))  # 將每個(gè)數(shù)組的第一個(gè)元素添加到末尾,首尾相連
score_b = np.concatenate((score[1], [score[1][0]]))  # 將每個(gè)數(shù)組的第一個(gè)元素添加到末尾,首尾相連
angles = np.concatenate((angles, [angles[0]]))
labels = np.concatenate((labels, [labels[0]]))
fig = plt.figure(figsize=(10, 6), dpi=100)
fig.suptitle("成績(jī)對(duì)比")
ax1 = plt.subplot(121, polar=True)
ax2 = plt.subplot(122, polar=True)
ax, data, name = [ax1, ax2], [score_a, score_b], ["張三", "李四"]
for i in range(2):  # 0:左圖 張三,1:右圖 李四
    for j in np.arange(0, 100+20, 20):
        ax[i].plot(angles, 6*[j], '-.', lw=0.5, color='#123456')  # 畫(huà)五邊形框,lw=linewidth
    for j in range(5):
        ax[i].plot([angles[j], angles[j]], [0, 100], ':', lw=0.7, color='green')  # 畫(huà)5條半徑線,每個(gè)角度連接圓心0和頂點(diǎn)100
        ax[i].plot(angles, data[i], color='b')   # 在極坐標(biāo)下畫(huà)成績(jī)折線圖
        ax[i].fill(angles, data[i],color='#B34543',alpha=0.1)
        ax[i].spines['polar'].set_visible(False)  # 隱藏最外圈的圓
         # 隱藏圓形網(wǎng)格線
        ax[i].grid(False)
    for a, b in zip(angles, data[i]):
        ax[i].text(a, b+5, '%.00f' % b, ha='center', va='center', fontsize=12, color='b')
        ax[i].set_thetagrids(angles*180/np.pi, labels)
        ax[i].set_theta_zero_location('N')
        ax[i].set_rlim(0, 100)
        ax[i].set_rlabel_position(0)
        ax[i].set_title(name[i])
plt.show()

極坐標(biāo)

import matplotlib.pyplot as plt
import numpy as np
plt.figure(figsize=(10,5))  # 設(shè)置畫(huà)布
 
ax1 = plt.subplot(121, projection='polar')  # 左圖: projection='polar' 表示極坐標(biāo)系
ax2 = plt.subplot(122)                      # 右圖: 默認(rèn)是直角坐標(biāo)系
 
x = np.linspace(0,2*np.pi,9)   # 0 - 2Π 平均劃分成9個(gè)點(diǎn) [0,1/4,1/2,3/4,1,5/4/,3/2,7/4,2]  0pi = 2pi
y = np.random.random(9)*10        # 隨機(jī)9個(gè)值
y[-1] = y[0]                      # 首位相連
 
ax1.plot(x,y,marker='.')    # 畫(huà)左圖(ax1)  極坐標(biāo) (x表示角度,y表示半徑)
ax2.plot(x,y,marker='.')    # 畫(huà)右圖(ax2)直角坐標(biāo) (x表示橫軸,y表示縱軸)
 
ax1.fill(x,y,alpha=0.3)
ax2.fill(x,y,alpha=0.3)
 
plt.show()

 到此這篇關(guān)于matplotlib繪制雷達(dá)圖的基本配置(萬(wàn)能模板案例)的文章就介紹到這了,更多相關(guān)matplotlib 雷達(dá)圖內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python 進(jìn)程池的兩種不同實(shí)現(xiàn)方法示例

    python 進(jìn)程池的兩種不同實(shí)現(xiàn)方法示例

    這篇文章主要為大家介紹了python 進(jìn)程池的兩種不同實(shí)現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-05-05
  • 一文教你Python如何使用sqlparse玩轉(zhuǎn)SQL解析

    一文教你Python如何使用sqlparse玩轉(zhuǎn)SQL解析

    sqlparse?是一個(gè)?Python?第三方庫(kù),專(zhuān)門(mén)用于解析和格式化?SQL?語(yǔ)句,它提供了強(qiáng)大的?SQL?解析功能,下面小編就來(lái)為大家詳細(xì)介紹一下它的具體使用吧
    2025-02-02
  • Python實(shí)現(xiàn)的使用telnet登陸聊天室實(shí)例

    Python實(shí)現(xiàn)的使用telnet登陸聊天室實(shí)例

    這篇文章主要介紹了Python實(shí)現(xiàn)的使用telnet登陸聊天室,以實(shí)例形式較為詳細(xì)的分析了Python實(shí)現(xiàn)聊天室及Telnet登陸的相關(guān)技巧,需要的朋友可以參考下
    2015-06-06
  • numpy最值、求和的實(shí)現(xiàn)

    numpy最值、求和的實(shí)現(xiàn)

    本文主要介紹了numpy最值、求和的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • python pandas模塊進(jìn)行數(shù)據(jù)分析

    python pandas模塊進(jìn)行數(shù)據(jù)分析

    Python的Pandas模塊是一個(gè)強(qiáng)大的數(shù)據(jù)處理工具,可以用來(lái)讀取、處理和分析各種數(shù)據(jù),本文主要介紹了python pandas模塊進(jìn)行數(shù)據(jù)分析,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-01-01
  • 用Python實(shí)現(xiàn)Newton插值法

    用Python實(shí)現(xiàn)Newton插值法

    最近在做數(shù)值分析的作業(yè),作業(yè)里面的小數(shù)點(diǎn)讓計(jì)算能力本就薄弱的我雪上加霜,為了偷個(gè)小懶快速把作業(yè)完成,所以有了這篇博客。哈哈哈哈哈,讓我們一起復(fù)制copy,完成作業(yè),哈哈哈哈需要的朋友可以參考下
    2021-04-04
  • Pandas DataFrame中的tuple元素遍歷的實(shí)現(xiàn)

    Pandas DataFrame中的tuple元素遍歷的實(shí)現(xiàn)

    這篇文章主要介紹了Pandas DataFrame中的tuple元素遍歷的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • 簡(jiǎn)單介紹Python中的len()函數(shù)的使用

    簡(jiǎn)單介紹Python中的len()函數(shù)的使用

    這篇文章主要簡(jiǎn)單介紹了Python中的len()函數(shù)的使用,包括在四種情況下的使用小例子,是Python學(xué)習(xí)當(dāng)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-04-04
  • python arcpy練習(xí)之面要素重疊拓?fù)錂z查

    python arcpy練習(xí)之面要素重疊拓?fù)錂z查

    今天小編就為大家分享一篇Python ArcPy的面要素重疊拓?fù)錂z查,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-09-09
  • Python爬蟲(chóng)基礎(chǔ)之初次使用scrapy爬蟲(chóng)實(shí)例

    Python爬蟲(chóng)基礎(chǔ)之初次使用scrapy爬蟲(chóng)實(shí)例

    今天給大家?guī)?lái)的是關(guān)于Python爬蟲(chóng)的相關(guān)知識(shí),文章圍繞著Python scrapy展開(kāi),文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06

最新評(píng)論

张家口市| 莒南县| 乌鲁木齐市| 武功县| 阿拉善盟| 潮安县| 韩城市| 新余市| 乐陵市| 永登县| 淄博市| 乐至县| 尼勒克县| 东莞市| 库伦旗| 金沙县| 台北县| 平湖市| 黔西县| 巴塘县| 墨脱县| 墨玉县| 万荣县| 龙游县| 武邑县| 甘德县| 孙吴县| 平凉市| 饶阳县| 会泽县| 吉林市| 乌恰县| 墨竹工卡县| 紫阳县| 林口县| 大荔县| 黎城县| 监利县| 和龙市| 云阳县| 元阳县|