最近看《機器學習系統設計》…前兩章。學到了一些用matplotlib進行資料視覺化的方法。在這裡整理一下。
最開始,當然還是要匯入我們需要的包:
1. 畫散點圖
畫散點圖用plt.scatter(x,y)。畫連續曲線在下乙個例子中可以看到,用到了plt.plot(x,y)。
plt.xticks(loc,label)可以自定義x軸刻度的顯示,第乙個引數表示的是第二個引數label顯示的位置loc。
plt.autoscale(tight=true)可以自動調整影象顯示的最佳化比例 。
畫出散點圖如下:
2. 多項式擬合併畫出擬合曲線
## 多項式擬合
效果圖:
3. 畫多個子圖
這裡用到的是sklearn的iris_dataset(鳶尾花資料集)。
此資料集包含四列,分別是鳶尾花的四個特徵:
這裡首先對資料進行一定的處理,主要就是對特徵名稱進行兩兩排列組合,然後任兩個特徵乙個乙個做x軸另乙個做y軸進行畫圖。
這裡有乙個排列組合參考**,最後是取出了兩兩組合的情況。
排列組合的結果是feature_names_2包含了排列組合的所有情況,它的每乙個元素包含了乙個排列組合的所有情況,比如第乙個元素包含了所有單個元素排列組合的情況,第二個元素包含了所有的兩兩組合的情況……所以這裡取出了第二個元素,也就是所有的兩兩組合的情況
下面是在for迴圈裡畫多個子圖的方法。對我來說,這裡需要學習的有不少。比如
for i,k in enumerate(feature_names_2[1]):這一句老是記不住。
比如從列表中取出某元素所在的索引的方法:index1 = feature_names.index(k[0]),也即index = list.index(element)的形式。
比如for迴圈中畫子圖的方法:plt.subplot(2,3,1+i)
比如for迴圈的下面這用法:for t,marker,c in zip(range(3),」>ox」,」rgb」):
這裡的視覺化效果如下:
4. 畫水平線和垂直線
比如在上面最後一幅圖中,找到了一種方法可以把三種鳶尾花分出來,這是我們需要畫出模型(一條直線)。這個時候怎麼畫呢?
下面需要注意的就是plt.vlines(x,y_min,y_max)和plt.hlines(y,x_min,x_max)的用法。
此時視覺化效果如下:
5. 動態畫圖
plt.ion()開啟互動模式。plt.show()不再阻塞程式執行。
注意plt.axis()的用法。
視覺化效果:
Python資料分析之pandas資料視覺化
python資料視覺化常用的是matplotlib庫,matplotlib是底層庫,今天學了pandas的資料視覺化,相對於matplotlib庫來說,簡單許多。我們也可以加入grid引數新增格網 pandas繪圖其實是對matplotlib庫繼承,而matplotlib庫預設為ascii編碼,所以...
優雅的使用Python之軟體管理
方法一 lpython get pip.py d python33 python get pip.py downloading unpacking pip downloading unpacking setuptools installing collected packages pip,setup...
優雅的使用python
優雅的使用python,讓自己的code更pythonic test list 龍母 雪諾 提里昂 山姆 count 0 for name in test list print s的序號是 d name,count count 1龍母的序號是 0 雪諾的序號是 1 提里昂的序號是 2 山姆的序號是 ...