91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么用Python畫王者榮耀英雄能力雷達圖

發布時間:2021-11-25 14:25:20 來源:億速云 閱讀:315 作者:iii 欄目:大數據

這篇文章主要講解了“怎么用Python畫王者榮耀英雄能力雷達圖”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“怎么用Python畫王者榮耀英雄能力雷達圖”吧!

現有以下表格,我需要畫成第二張圖中的雷達圖(類似fifa足球、王者榮耀里面的那種球員能力圖)

怎么用Python畫王者榮耀英雄能力雷達圖

怎么用Python畫王者榮耀英雄能力雷達圖

雷達圖函數用到以下包:

import math
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.colors as mcolors
 

導入中文相關字體

# 導入中文
import matplotlib.font_manager as font_manager

font_dirs = ['./font']
font_files = font_manager.findSystemFonts(fontpaths=font_dirs)
font_list = font_manager.createFontList(font_files)
font_manager.fontManager.ttflist.extend(font_list)
plt.rcParams['font.family'] = 'SimHei'

# 啟用主題
plt.style.use('ggplot')
 

獲取極徑范圍

# 獲取極徑范圍
def get_range(data_list):
    max = min = 0
    for _, data in data_list.items():
        for v in data:
            if v < min:
                min = v
            if v > max:
                max = v
    return [min, max]
 

生成能力分布圖

# 生成能力分布圖
def generate_ability_map(abilities, data_list, rows=3):
    min, max = get_range(data_list)
    # 根據能力項等分圓
    angles = np.linspace(0, 2 * np.pi, len(abilities), endpoint=False)
    angles = np.append(angles, angles[0])
    # 生成n個子圖
    fg, axes = plt.subplots(math.ceil(len(data_list) / rows), rows, subplot_kw=dict(polar=True),figsize=(9,9))
    # 調整子圖間距
    plt.subplots_adjust(wspace =0.6, hspace =0.6)
    # 打散為一維數組
    axes = axes.ravel()
    # 獲取所有支持的顏色
    colors = list(mcolors.TABLEAU_COLORS)
    # 循環繪制
    i = 0
    for name, data in data_list.items():
        data = np.append(np.array(data), data[0])
        ax = axes[i]
        # 繪制線條
        ax.plot(angles, data, color=colors[i])
        # 填充顏色
        ax.fill(angles, data, alpha=0.7, color=colors[i])
        # 設置角度
        ax.set_xticks(angles)
        # 設置坐標軸名稱
        ax.set_xticklabels(abilities)
        # 設置名稱
        ax.set_title(name, size=10, color='black', position=(0.5, 0.4))
        # 設置極徑最小值
        ax.set_rmin(min)
        # 設置極徑最大值(最大值加0.1,要不線條最外圈線顯示不完全)
        ax.set_rmax(max + 0.1)
        i = i + 1
    plt.show()
 

調用:

#數據
abilities = ['靈活性', '功能性', '平穩性', '安全性', '耐用性', '經濟性']
super_heros = {
    '固定點降落': [2,1,5,5,4,3],
    '任意點降落': [5,5,2,3,3,4],
    '局部最優點降落': [4,5,4,4,3,4],
}

#畫圖
generate_ability_map(abilities, super_heros)

程序運行后,得到文中開始的圖:

怎么用Python畫王者榮耀英雄能力雷達圖

感謝各位的閱讀,以上就是“怎么用Python畫王者榮耀英雄能力雷達圖”的內容了,經過本文的學習后,相信大家對怎么用Python畫王者榮耀英雄能力雷達圖這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

神木县| 沭阳县| 台州市| 尉犁县| 滨州市| 慈利县| 北辰区| 库车县| 勃利县| 比如县| 贺兰县| 兖州市| 丹棱县| 高青县| 潮州市| 博湖县| 尉氏县| 涿鹿县| 仲巴县| 广宁县| 右玉县| 镇坪县| 寻乌县| 陕西省| 抚顺县| 陆川县| 台东县| 喀喇| 通许县| 达尔| 杭锦旗| 威远县| 壤塘县| 高清| 宿迁市| 呈贡县| 乐亭县| 烟台市| 界首市| 蓝山县| 嫩江县|