1. 程式人生 > >python--matplotlib庫使用2

python--matplotlib庫使用2

.org 屬性 from ria ont 大小 itl 詳細 utf

功能:python畫2D圖

直接上代碼,註釋很詳細!

 1 #-*- coding:utf-8 -*-
 2 
 3 from numpy import *
 4 import matplotlib.pyplot as plt
 5 
 6 A=array([0,0]);B=array([[1,0],[0,1]])
 7 #生成以A為均值,以B為協方差矩陣,並滿足正態分布的隨機數
 8 C1=random.multivariate_normal(A,B,10)          #10*2
 9 C2=random.multivariate_normal(A+0.1,B+0.1,20)  #20*2
10 C2=mat(C2)    #
這樣做只是為了說明ndarray和matrix型數據的不同 11 12 fig=plt.figure(figsize=(5,5)) #制定畫布大小 13 ax=fig.add_subplot(111) 14 15 #ndarray型數據C1,shpe(C1)得到(10L,);matrix型C=mat(C1),shpe(C[:,1])得到(10L,1L) 16 ax.scatter(C1[:,0],C1[:,1],s=50,c=r,marker=o,alpha=0.5,label=C1) 17 ax.scatter(C2[:,0].flatten().A[0],C2[:,1].flatten().A[0],s=30,c=
b,marker=^,alpha=0.5,label=C2) 18 ‘‘‘ 19 scatter(x,y,x=None,c=None,marker=None) 20 x,y必須是1-D 21 marker為標記,s控制標記的大小,c控制標記的顏色 22 flatten()函數 :a.flatten(),得到一個將a轉換為1-D的copy 23 另外,matrix(也就是mat(a))才有A屬性,可以使用mat(a).flatten().A[0],得到一個1-D的“array” 24 ‘‘‘ 25 plt.title(scatter plot) 26 plt.xlabel(the Variable X
) 27 plt.ylabel(the Variable Y) 28 29 ax.legend(loc=upper left) #確定方框位置 30 plt.show()

關於官方pyplot.scatter()函數詳解見:http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.scatter

  

python--matplotlib庫使用2