一、將數字視覺化暨meshgrid\contourf\contour的使用。
contour - 繪製等高線
contourf - 填充等高線
兩個的返回值值是一樣的(return values are the same),實際上contourf 相當於 contour filled。
常用引數語法:
mp.contourf(x, y, z, 等高線條數,cmap=顏色對映)# 等高線填充
mp.contour(x, y, z, 等高線條數,colors=顏色, linewidth=線寬)#等高線繪製
#by:sxy in 10.8.2018
#將數字視覺化。
#meshgrid\contourf\contour的應用。
import numpy as np
import matplotlib.pyplot as plt
#meshgrid,將向量擴充到2d空間內)
x=np.arange(0,11,1)
y=np.arange(0,11,1)
xx,yy=np.meshgrid(x,y)
print("xx",xx)
print("yy",yy)
zz=np.sin(xx)+np.cos(yy)
plt.contourf(xx,yy,zz,3,cmap=plt.cm.rainbow)
cont=plt.contour(xx,yy,zz,3,colors='black')
plt.clabel(cont,inline=true,fontsize=10)
plt.show()
執行結果為:
: @1、文字要和.py檔案處於同乙個檔案目錄下
@2、一些函式的使用:
strip() 方法用於移除字串頭尾指定的字元(預設為空格或換行符)或字串行。
split() 通過指定分隔符對字串進行切片,如果引數 num 有指定值,則僅分隔 num 個子字串 #該方法只能刪除開頭或是結尾的字元,不能刪除中間部分的字元。
np.mat()是將序列轉為np的二維陣列,np.transpose()是將陣列轉置。
例子**:
#文字要和.py檔案處於同乙個檔案目錄下。
import numpy as np
import matplotlib.pyplot as plt
def loadfile(filename):
fr=open(filename)
x=y=
for line in fr.readlines():#取一行,為字串的格式
#python strip() 方法用於移除字串頭尾指定的字元(預設為空格或換行符)或字串行。
# split() 通過指定分隔符對字串進行切片,如果引數 num 有指定值,則僅分隔 num 個子字串
#該方法只能刪除開頭或是結尾的字元,不能刪除中間部分的字元
line= line.strip().split()
xmat=np.mat(x).t#np.mat()是將序列轉為np的二維陣列,np.transpose()是將陣列轉置
ymat=np.mat(y).t
return xmat, ymat
xmat, ymat=loadfile("datatest.txt")
print("xmat:", xmat.shape, type(xmat))
print("ymat:", ymat.shape, type(ymat))
plt.scatter(xmat.a, ymat.a, s=50, c="r")
plt.grid(true)
plt.xlabel('x')
plt.ylabel('y')
plt.show()
結果:
PyCharm使用筆記(一) 常見問題及解決方案
1.安裝模組時出現 error microsoft visual c 14.0 is required.get it with microsoft visual c build tools 解決辦法 2.使用pytesseract時出現錯誤 pytesseract.pytesseract.tesse...
Vim 使用筆記
set hlsearch set nohlsearch 搜尋後清除上次的加亮 nohl nohlsearch 拷貝 很有用的一句話,規定了格式選項,讓它換行不自動空格 set formatoptions tcrqn set fo r set noautoindent 再 shift insert 正...
xemacs使用筆記
xemacs使用筆記 xemacs emacs的下一代,由lucid原創 from debian參考手冊.由於不知道什麼時候刪掉了emacs的乙個重要檔案.每次都沒法安裝好.突然發現了xemacs,於是決定使用看看.本人還是菜鳥,僅供交流 我使用的ubuntu系統,所以就直接apt get inst...