作者:王大偉 Python愛好者社區(qū)唯一小編 博客:https://ask./blog/wangdawei 點擊上圖即可限時半價購買課程 前文傳送門:pandas可視化(1)【官方文檔解讀】--基礎繪圖 如繪圖過程中,中文字體和負號顯示有問題,可以參照如下鏈接修改配置參數設置正常顯示: https://www./post/441 IDE : jupyter notebook Anaconda 3.X 對于標記的非時間序列數據,你可能希望生成條形圖: import matplotlib 注:如前一章,先導入必要的模塊和繪圖的數據準備 plt.figure(); 注:df.iloc[5]意思是取出df第6行(索引為5),然后繪制條形圖 plt.axhline(0, color='k')指的是在y=0的位置畫一條黑色的線 注:因為是隨機產生的值繪圖,你的圖一般和我不一樣,一樣就厲害了! 這種為圖所存在的內存地址位置 df2 = pd.DataFrame(np.random.rand(10, 4), columns=['a', 'b', 'c', 'd']) 注:如果看了前一章,以上代碼很好理解,這里同一幅圖繪制多個條形圖比較 df2.plot.bar(stacked=True) 注:將a、b、c、d數據疊加起來繪制條形圖 df2.plot.barh(stacked=True) 注:繪制水平疊加條形圖 df4 = pd.DataFrame({'a': np.random.randn(1000) + 1, 'b': np.random.randn(1000), 注:以標準正態(tài)分布為基礎產生一個df4 plt.figure() 注:繪制直方圖,alpha=0.5意思為透明度為50% 注:明明有三列數據,畫出有六種顏色,應該是是顏色疊加出了新顏色 plt.figure() 注:畫堆積直方圖(不會重疊,直觀)bins=20指的是分為20個區(qū)段 圖中沒有顯示20個因為正態(tài)分布距離中心遠處取值可能心很小,可能只有個別值,在圖中不明顯 plt.figure(); 注:取出A列畫橫向累積直方圖,采用默認10個區(qū)段 plt.figure() 注:diff為差分,即后一個減去前一個,我們看一下: df['A'].diff().head() 注:顯示A列中差分結果的前五個數 注意,第一個值不存在,因為原來的第一個數減去前面一個(第一個的前面一個數不存在),所以為NaN 差分后繪制的直方圖為(默認為十個區(qū)段吧): plt.figure() 注:df中四欄(4列)分別繪制一階差分的圖(綠色,半透明,分20區(qū)段),有種2x2子圖的感覺 data = pd.Series(np.random.randn(1000)) 注:這里產生1000個正態(tài)分布的隨機數,然后使用hist方法中的by參數隨機產生0-3中的整數(即0、1、2、3) 將原來的1000個正態(tài)分布的隨機數對應上分組繪制四張圖 圖的長寬大小為6x4 pandas的繪圖真美~~~~~~~~ pandas繪制條形圖、正方圖到此結束 文中所寫如有謬誤請指出,感謝! http://pandas./pandas-docs/stable/visualization.html# 微課福利:Hellobi live |8月22日,利用 Python 建構金融數據分析平臺 |
|