2012-03-15 3 views
1

저는 파이썬에서 matplotlib를 사용하고 있습니다. 막대를 사용하여 막대 그래프를 만들었습니다. 히스토그램이 나타날 때 x 축에 5의 배수가 나타나고 1000의 배수가 y 축에 나타납니다. y 축의 경우 전혀 문제가되지 않지만 x 축의 경우 시간당 1 개의 막대를 사용하므로 간격을 5 대신 1로 설정합니다. 이것을 어떻게 할 수 있습니까? 사전에Python matplotlib interval

감사합니다.

def plotHistogramTickets(): 

    hours_NumbersSold = dict() 
    for i in range(24): 
     hours_NumbersSold[i]=0 
    soldTickets = db.getSoldTickets() 
    for ticket in soldTickets: 
     hourSold = ticket.timeBought.hour 
     hours_NumbersSold[hourSold]+=1 
    for k,v in hours_NumbersSold.iteritems(): 
     plt.bar(k,v,1,0) 
    plt.xlabel("Hours") 
    plt.ylabel("Numbers of tickets sold") 
    plt.title("Numbers of tickets sold per hour") 
    plt.grid(True) 
    plt.show() 

답변

3

xticks()을 사용하십시오. 당신이합니다 (show() 명령 앞에 넣어)에 대한 다음은 트릭을 수행해야합니다

plt.xticks(range(25)) 
+0

감사합니다! 하지만 문제는 x 값이 25까지이고, 대신 24가 필요합니다. 어떤 생각? – Confituur

+0

이상 하긴하지만, 그렇다면'25'를'24'로 대체하십시오 :'plt.xticks (range (24))' –

관련 문제