2015-10-15 143 views
-2

我應該打印一個條形圖,我曾嘗試使用此代碼[:10],但我不知道爲什麼它不工作。以及如何打印前10條形圖Python

location_uid, count = np.unique(data['locationid'], return_counts=True) 
location_uid = np.require(location_uid, dtype=np.int) 
n_wifi_locs = len(location_uid) 

fig, ax = plt.subplots(figsize = (15, 8)) 
idx = np.argsort(count)[::-1] 

dummy = ax.bar(np.arange(n_wifi_locs),count[idx],align='center',alpha=0.4) 
dummy = ax.set_xticks(np.arange(n_wifi_locs)) 
dummy = ax.set_xticklabels(location_uid[idx]) 
+1

你是什麼意思「它不工作」? –

+0

,因爲我試圖插入[:10]來顯示只有10個條形圖,並沒有區別... – user3598555

回答

0

我沒有訪問您的數據,讓我產生了一些隨機的。我只是修改idx,只保留10個。我還使用了np.arange(10),因爲我們只繪製了10個值。

import numpy as np 
import matplotlib.pyplot as plt 

location_uid, count = np.unique(np.random.randint(0, 20, 1000), return_counts=True) 
location_uid = np.require(location_uid, dtype=np.int) 
n_wifi_locs = len(location_uid) 

fig, ax = plt.subplots(figsize = (15, 8)) 
idx = np.argsort(count)[::-1][:10] 

dummy = ax.bar(np.arange(10), count[idx], align='center',alpha=0.4) 
dummy = ax.set_xticks(np.arange(10)) 
dummy = ax.set_xticklabels(location_uid[idx]) 
+0

你應該添加行「import matplotlib.pyplot as plt」,我想。 – Cleb

+0

非常感謝你Mucchi – user3598555

+0

@Cleb確實,更正了。 –