Python數據分析及可視化實例之車輛MPG數據(21)

系列文章總目錄:Python數據分析及可視化實例目錄


Talk is cheap,show me your code.

# coding: utf-8nn# In[1]:nnfrom bokeh.plotting import figure, output_notebook, shownoutput_notebook()nnn# In[2]:nnfrom bokeh.sampledata.autompg import autompg # 車輛MPG數據每加侖英里數nfrom numpy import arrayngrouped = autompg.groupby("yr") # 直接可以根據列分類排序nmpg = grouped["mpg"] #單獨取mpg列navg = mpg.mean() # 均值nstd = mpg.std() # 標準差nyears = array(list(grouped.groups.keys()))namerican = autompg[autompg["origin"]==1] # 選擇數據,同pandasnjapanese = autompg[autompg["origin"]==3]nnp = figure() # 在一張圖件上不同圖層繪製nnp.quad(left=years-0.4, right=years+0.4, bottom=avg-std, top=avg+std, fill_alpha=0.4) # 矩形邊界數據,默認顏色,透明度0.4nnp.circle(x=japanese["yr"], y=japanese["mpg"], size=8,n alpha=0.4, line_color="red", fill_color=None, line_width_=2) # 圓形圓心坐標位置,大小,線的顏色,填充顏色、線寬等nnp.triangle(x=american["yr"], y=american["mpg"], size=8, n alpha=0.4, line_color="blue", fill_color=None, line_width_=2) # 三角形形心坐標,大小,線的顏色,填充顏色、線寬等nnshow(p)n

# In[3]:nnfrom bokeh.models import ColumnDataSourcenfrom bokeh.layouts import gridplotnsource = ColumnDataSource(autompg.to_dict("list"))nsource.add(autompg["yr"], name="yr")nnplot_config = dict(plot_width_=300, plot_height=300,n tools="pan,wheel_zoom,box_zoom,box_select,lasso_select") # 轉換為字典格式nnp1 = figure(title="MPG by Year", **plot_config)np1.circle(x="yr", y="mpg", color="blue", source=source) # 年份和mpg關係nnp2 = figure(title="HP vs. Displacement", **plot_config)np2.circle(x="hp", y="displ", color="green", source=source) # 馬力和排放量nnp3 = figure(title="MPG vs. Displacement", **plot_config) # mpg和排放量np3.circle("mpg", "displ", size="cyl", line_color="red", fill_color=None, source=source) # 圓圈大小採用cyl列數據nnp = gridplot([[ p1, p2, p3]], toolbar_location="right") # 採用網格式布置圖,可以定義每行圖形的數量nnshow(p)n

附註:

有人問過我的編程學習路徑,其實前面的文章已經說過了,再簡要說說,

作為一個自學兩年的偽pythoner,我本著先開火,後瞄準的方法逐步入門:

1.先學python基本語法(廢話),爬蟲,各種爬,數據存儲,資料庫增刪改查;

2.用Flask做了一個網站,熟悉數據傳輸基本原理,簡單接觸BootStrap前端框架;

3.做兩個微信小程序,熟悉前端UI,JS/CSS和Html,進而理解BootStrap的布局;

4.期間資料庫存儲查詢(聚類)數據,Pandas數據分析(和統計學暫時沒有毛關係);

5.接著數據可視化,基於Pandas和Flask的基礎,我選擇了Bokeh(可與Flask交互)。

大數據?哈哈,翻看過機器學習實戰,看過別人錄製的視頻教程,

知道監督、非監督學習一些基本演算法,僅此而已,至於神經網路,還在神經階段!

接下來的文章主要基於Pandas+Sklearn+Bokeh,源碼經過注釋以及運行測試過的。

膠水語言博大精深,

本主只得一二為新人帶路,

老鳥可去另一專欄:Python中文社區

新手可查閱歷史目錄:

Python數據分析及可視化實例目錄


最後,別只收藏不關注哈

推薦閱讀:

通過CRM系統能做什麼樣的深度分析呢?
轉型之路的思考和體會
20170420 NumPy基礎:數組和矢量計算-3
大數據·最新美帝UFO目擊事件可視化圖表
[長篇小說]數據分析俠A的成長故事[2.26更]

TAG:数据分析 | 数据挖掘 | 数据 |