使用Google Colab对PUBG的玩家死亡数据集进行可视化分析
使用Google Colab對PUBG的玩家死亡數(shù)據(jù)集進(jìn)行可視化分析
數(shù)據(jù)集
數(shù)據(jù)集可以在Kaggle(https://www.kaggle.com/)中找到。需要注冊Kaggle賬號后,Account → API, 選擇 ”Create New API Token” 并下載.之后把token文件上傳到Colab的文件夾中。
配置數(shù)據(jù)集
! pip install kaggle ! mkdir ~/.kaggle ! cp .json ~/.kaggle/ ! chmod 600 ~/.kaggle/kaggle.json//下載并解壓PUBG數(shù)據(jù)集,可能需要花幾分鐘 ! kaggle datasets download skihikingkevin/pubg-match-deaths ! unzip pubg-match-deaths.zip一些畫圖的模塊,主要是pandas library
import pandas as pd import numpy as np import matplotlib.pyplot as plt import matplotlib.cm as cmap %matplotlib inline數(shù)據(jù)準(zhǔn)備
導(dǎo)入數(shù)據(jù)集中的地圖
死亡位置散點(diǎn)圖
首先需要對一些不在地圖邊界內(nèi)的死亡數(shù)據(jù)進(jìn)行剔除,并且設(shè)置散點(diǎn)圖的坐標(biāo)。
在scatter中,s參數(shù)代表點(diǎn)的大小,alpha代表透明度,color代表顏色。為了保證在能看清背景圖片的情況下,對散點(diǎn)圖和熱圖進(jìn)行分析,我選擇了0.6的alpha值。
死亡位置熱圖
hm_cells()函數(shù)主要用于計(jì)算每個熱圖單元中的死亡人數(shù),主要用參數(shù)n來控制單元的大小。
heatmap()函數(shù)用于繪制熱圖。對于單元的大小,單元至少需要覆蓋整個地形,例如整個城市、整個山頂?shù)取_@樣得出的單元就更有代表性。
對于log參數(shù),該函數(shù)使用log2來計(jì)算輸入數(shù)據(jù)單元的基數(shù)2的對數(shù),并將任何元素的負(fù)值或零值設(shè)置為零,這對于跨越幾個數(shù)量級的數(shù)據(jù)的可視化很有用。然而,在這個實(shí)驗(yàn)室中,我使用的數(shù)據(jù)集不是很大,所以沒有使用對數(shù)參數(shù)。
對于阿爾法參數(shù),有必要使熱圖盡可能清晰,同時仍能看到背景地形。經(jīng)過幾次實(shí)驗(yàn),我認(rèn)為0.6是比較合理的。
不同武器造成的死亡位置熱圖
首先需要對不同的武器設(shè)置標(biāo)簽,包括步槍、狙擊槍、散彈槍、爆炸物、車輛等等。
繪制不同武器造成死亡的位置熱圖,我只分析了步槍、散彈槍、爆炸物和車輛這些有代表性的。
我認(rèn)為這些死亡位置的差異主要是由于不同的武器適用于不同的地形。一方面,玩家喜歡在該地形上使用合適的武器,另一方面,使用該武器擊殺的可能性更大。
對于步槍來說,整個地圖都適合使用,所以熱圖的分布比較均勻。對于霰彈槍來說,它適合于城市地形,那里有更多的掩體,而且離敵人更近。爆炸物適用于敵人難以移動的狹窄地形。車輛在公路或平原上更容易產(chǎn)生擊殺。四個圖一起比較可以看出,車輛和爆炸物產(chǎn)生的擊殺數(shù)遠(yuǎn)低于槍械,因?yàn)樗鼈兏菀妆欢惚堋?br />
擊殺距離熱圖
首先需要重寫cell()函數(shù),通過擊殺者和被擊殺者的位置返回?fù)魵⒕嚯x。然后用新的cell()函數(shù)繪制熱圖。
死亡距離的熱圖顯示,除了開闊的平原地區(qū)死亡距離比較遠(yuǎn)之外,各地區(qū)的死亡距離沒有太大差別。我認(rèn)為這是因?yàn)槲淦魃涑痰牟顒e很小,而且其它地區(qū)有更多的掩體。
總結(jié)
以上是生活随笔為你收集整理的使用Google Colab对PUBG的玩家死亡数据集进行可视化分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Jetson Orin 平台MAX929
- 下一篇: 科技驰援 攻坚战疫 | 用友助力武汉协和