|
作者:王大偉 Python愛好者社區(qū)唯一小編 博客:https://ask./blog/wangdawei 點擊上圖即可限時半價購買課程 前文傳送門: pandas可視化(2)【官方文檔解讀】-- 條形圖、直方圖 如繪圖過程中,中文字體和負號顯示有問題,可以參照如下鏈接修改配置參數(shù)設置正常顯示: https://www./post/441 IDE : jupyter notebook Anaconda 3.X import matplotlib注:如前一章,先導入必要的模塊和繪圖的數(shù)據(jù)準備 df = pd.DataFrame(np.random.rand(10, 5), columns=['A', 'B', 'C', 'D', 'E'])注:使用numpy產生一個10行5列的矩陣,矩陣內的元素是隨機產生的標準正態(tài)分布數(shù)字 然后將矩陣轉為df,給這五列數(shù)據(jù)欄位命名為A、B、C、D、E,并顯示其前五行觀察 df.plot.box()注:繪制箱線圖 注:這里有A~E五個箱線圖放在一張圖,理解為5次試驗,每次的即為其對應列中的十行(10個數(shù)字)的箱線圖 箱線圖解釋如下圖: color = dict(boxes='DarkGreen', whiskers='DarkOrange',df.plot.box(color=color, sym='r+')注:繪制箱線圖,這里增加了箱線圖每部分線條顏色的設置,至于sym官方解釋是:specify fliers style 直譯為:指定傳單風格,我們暫且可以認為是繪圖的某種風格,我把這個參數(shù)去掉繪圖發(fā)現(xiàn)沒什么區(qū)別 如果有朋友理解,請留言評論賜教 df.plot.box(vert=False, positions=[1, 4, 5, 6, 8])注:這里vert = False繪制水平箱線圖,并且將幕布豎直方向分為8塊等大小區(qū)域 將5個箱線圖從下到上依次畫在1、4、5、6、8五個位置 可以使用DataFrame.boxplot來繪制boxplot的界面 df = pd.DataFrame(np.random.rand(10,5))注:使用和之前產生df一樣的方法產生df,然后用df的boxplot方法畫箱線圖 df = pd.DataFrame(np.random.rand(10,2), columns=['Col1', 'Col2'] )注:在原有的df上增加一欄X,其中包含A,B兩種分類,最后根據(jù)這種分類分別對col1和col2畫箱線圖 df = pd.DataFrame(np.random.rand(10,3), columns=['Col1', 'Col2', 'Col3'])注:這里傳入兩個分類依據(jù),所以2X2有四種分類組合 np.random.seed(1234)注:這段比較難理解,我們分步理解: np.random.seed(1234)注:這里使用某種隨機數(shù)種子產生器,隨機產生一個50行2列的df df_box['g'] = np.random.choice(['A', 'B'], size=50)注:然后加一欄g,隨機分為A,B兩類 df_box.loc[df_box['g'] == 'B', 1] += 3注:定位到所有g欄屬于B的行和第二列(索引是1),將其加3
bp = df_box.boxplot(by='g')
注:最后按照g欄分類畫圖,像之前兩張圖一樣 和以下繪圖代碼注意對比: bp = df_box.groupby('g').boxplot()
注:by有分開的意思,groupby有整合的意思 pandas繪制箱線圖到此結束 文中所寫如有謬誤請指出,感謝! http://pandas./pandas-docs/stable/visualization.html#
微課福利:Hellobi live |8月22日,利用 Python 建構金融數(shù)據(jù)分析平臺 |
|
|