簡體   English   中英

python中的散點圖密度來自csv中的數據

[英]Scatter plot density in python from data in csv

我有一個非常龐大的18000名玩家數據集。 每個玩家都有一個功能整體和完成例如,我想制作散點密度圖,因為“正常”情節我不能在哪里更多,哪里是更少的球員。

正常的散點圖代碼看起來像這樣......

import matplotlib.pyplot as plt
import numpy as np
import pandas as pd

DATA_LOCATION = "main_players.csv"
FIRST_ATTRIBUTE = "Finishing"
SECOND_ATTRIBUTE = "Overall"

datas = pd.read_csv(DATA_LOCATION)
x = datas[[FIRST_ATTRIBUTE]]
y = datas[[SECOND_ATTRIBUTE]]
plt.scatter(x, y, color='r')
plt.xlabel('Finishing')
plt.ylabel('Overall')
plt.title('Odnos overall i finishinga')

plt.show()

我在互聯網上看,我找到了一個代碼來執行以下操作:

# libraries
import matplotlib.pyplot as plt
import numpy as np

# create data
x = np.random.normal(size=50000)
y = x * 3 + np.random.normal(size=50000)

# Big bins
plt.hist2d(x, y, bins=(50, 50), cmap=plt.cm.jet)
#plt.show()

# Small bins
plt.hist2d(x, y, bins=(300, 300), cmap=plt.cm.jet)
#plt.show()

# If you do not set the same values for X and Y, the bins aren't square !
plt.hist2d(x, y, bins=(300, 30), cmap=plt.cm.jet)

#plt.show()

而且我只用x替換它們x,而且y也是,但它不起作用。

我希望輸出(密度圖)看起來像這樣:

在此輸入圖像描述

使用列名列表查詢數據框,如代碼中所示:

x = datas[[FIRST_ATTRIBUTE]]
y = datas[[SECOND_ATTRIBUTE]]

產生pd.Dataframes,plt.hist2d無法處理

嘗試:

x = datas[FIRST_ATTRIBUTE]
y = datas[SECOND_ATTRIBUTE]

獲得pd.Series。 這些你應該可以用plt.hist2d繪圖

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM