2016-04-28 4 views
0

Я пытаюсь построить ряд из dataframe -Python 3.x Matplotlib сюжет

print(df) 

Agent ID Tenure in Month As of 2014   City  State  P201101 \ 
0 1000000       65 Jersey City New Jersey 881.940392 

     P201102  P201103  P201104 P201105 P201106 ...  \ 
0 166.368261 1261.927008 531.211925 750.33716 357.73649 ...  

     P201306  P201307 P201308  P201309  P201310  P201311 \ 
0 1041.047706 639.671717 392.27343 860.148349 427.732344 972.562812 

     P201312 
0 593.675603  

Я нарезанной рекорд агента Id 1000000 от dataframe и теперь я хочу, чтобы построить ежемесячные данные о продажах (P201101 - P201312) с использованием matplotlib.

Ниже мой код -

x = list(df.columns[4:40]) 
y= df.iloc[:,4:40].values.tolist() 
plt.plot(y[0]) 
plt.show() 

К сожалению, ось х показывает значения 0,5,10 .... .Я хочу ось х, чтобы отобразить P201101, P201102, .... ., P201312. Я также пробовал использовать xlabel, xticks, но это не решает проблему. Пожалуйста, помогите

enter image description here

ответ

0

Проблема в том, что я должен был указан ось х отдельно. Скорректированный код выглядит следующим образом:

x=list(range(1,37)) 
xticks = list(df.columns[4:40]) 
y= df.iloc[:,4:40].values.tolist() 
print(x,y[0]) 
plt.plot(y[0]) 
plt.title("Agent ID "+str(list(df['Agent ID']))) 
plt.xticks(x,xticks,rotation = 90) 
plt.show() 
Смежные вопросы