matplotlib繪制直方圖【柱狀圖】


代碼:

def drawBar():
    xticks = ['A', 'B', 'C', 'D', 'E']#每個柱的下標說明
    gradeGroup = {'A':200,'B':250,'C':330,'D':400,'E':500}#用於畫圖的頻率數據 
    #創建柱狀圖
    #第一個參數為柱的橫坐標
    #第二個參數為柱的高度
    #參數align為柱的對齊方式,以第一個參數為參考標准
    plt.bar(range(5), [gradeGroup.get(xtick, 0) for xtick in xticks], align='center',yerr=0.000001)

    #設置柱的文字說明
    #第一個參數為文字說明的橫坐標
    #第二個參數為文字說明的內容
    plt.xticks(range(5), xticks)

    #設置橫坐標軸的標簽說明
    plt.xlabel('Grade')
    #設置縱坐標軸的標簽說明
    plt.ylabel('Frequency')
    #設置標題
    plt.title('Grades Of Male Students')
    #繪圖
    plt.show()

效果圖:

由此看出,要繪制直方圖,只要准備一個包含頻率(柱狀體高度)的字典,字典的key即為柱狀體的下標,字典的value即為柱狀體高度,各個柱狀體的橫坐標由字典的大小(多少個鍵值對)確定。

matplotlib的另外一種繪制直方圖函數是hist(),暫時不會用,待學習。

參考:http://www.cnblogs.com/harvey888/p/5717098.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM