近來看了些MATLAB,主要是數據可視化部分,順手記了些東西。沒有多細致,只希望用的時候有個目錄式的參考。
------------------------------------------------------------------------------------------------------------------------------
MATLAB 數據可視化筆記
-二維圖形
--plot函數
plot(x,"NAME",VALUE,...)-x為二維數組時,以各列分別成圖,下標為橫軸,值為縱
plot(x,y,"NAME",VALUE,...)-x為一維,y為二維,y的某一維和x有相同維數時,另一維為曲線條數,x為橫坐標
plot(x1,y1,x2,y2,"NAME",VALUE,...)
x為不同類型值(維數、復數)的時候得到的圖形情況不同
eg:
subplot()-建立坐標系--一幅圖中建立N個區域
plot()-繪圖
axis([x1,x2,y1,y2])-標定坐標范圍----axis square--正方形圖形
xlabel('NAME')-橫軸的名稱
ylabel('NAME')-縱軸的名稱
titile('')-
grid on--添加網格
--線型、標記等
顏色、標記、線型
''中表示
hold on-支持統一坐標軸圖中兩個圖形
legend('','','')-添加圖注
--坐標軸
axis----P-152
normal
equal
image fill
box off--取消邊框
tight-范圍為數據范圍
底層的get和set命令--gac為坐標軸的句柄對象
set(handle,'porpertyname')
XScale-對坐標軸進行變換
XDir-坐標軸的位置
XGrid-'on'或'off'
可以用semilogx和semilogy函數將坐標軸轉化為對數刻度
--多圖形疊繪
hold on/off
hold 在兩個命令之間切換
close關閉圖形窗口
clf擦出而不關閉
--子圖
subplot
--交互式繪圖和屏幕刷新
legend-生成圖例框
ginput-通過鼠標讀取坐標
--plotyy函數繪制雙坐標軸
--easy命令
使用函數句柄
fplot(handle,[min,max])------handle=@(x)function((x))
ezplot(f,[min,max])----ezplot(f)-在[-2pi,2pi]區間
ezpolar---同時那個,只是極坐標下
-三維圖形繪制
--曲線圖
plot3(x,y,z,'NAME',VALUE)
eg:
plot3(x,y1,z1,'r*',x,y2,z2,'bp',x,y3,z3,'mx');
--網格圖
mesh(z)--以矩陣z的列和行為x軸和y軸的自變量繪制網格
mesh(x,y,z)--x,y為自變量矩陣,z為建立在x,y之上的函數
mesh(x,y,z,c)--指定了z在各點的顏色矩陣
--在默認情況下,grid是打開的
meshc--函數在三位曲線之下畫等值線
meshz--函數增加邊界繪圖功能
--曲面圖
surf使所有網格都填充顏色
-平面陰影--shading flat
-插值陰影--shading interp
-遮擋屬性--通過篩選坐標值
----加等值線等同以上
--等值曲線圖
---2維等值曲線
contour(z)----z表達的等值線
coutour(z,n)----n為的等值線數目
coutour(z,v)----v為等值線數值
[c,h]=contour(...)----c為等值線矩陣,h為等值線句柄
-四維圖形繪制
--slice切片命令
用於顯示切面等
slice(V,sx,sy,sz)----繪制V=V(x,y,z)確定的函數在三個方向的切片,數目由sx,sy,sz確定
slice(X,Y,Z,V,sx,sy,sz)
slice(V,XI,YI,ZI)----XI,YI,ZI確定平面,切片
silce(...,'method')----指定切片的內插值方法:liner,cubic,nearest
--其他slice命令
contourslice----顯示等值線
streamslice----流線切面
--等值面
通過isosurface函數返回若干三角形頂點值-->傳遞給patch函數構成等制圖
-復數變量圖形的繪制
--cplxmap,cplxgrid,cplxroot--實部為高度,虛部為顏色
--cplxgrid函數生成一個復數矩陣,維數為(m-1)*(2m-1),極徑為[0,1],極角為[-pi,pi]
-特殊圖形的繪制
--area區域繪圖
area和plot繪制的圖形相似
plot只是對線條進行加色,area要對線之下的部分進行加色
--pie餅圖繪制
pie和pie3分別繪制二維和三維圖
pie(x)----x的每一部分是餅圖的一部分
pie(x,explod)----explod和x是同維數組,如果explod中有非零元素,相關餅圖突出
pie(...,labels)----labels用於標示扇形
--直方圖和梯形圖
bar和bar3函數繪制直方圖
barh和barh3繪制水平方向條形圖
bar(y)----為一維數組y每個元素繪制一個條形
bar(x,y)----在橫坐標x上繪制直方圖y,x的元素嚴格按照遞增排列
bar(...,width)----參數width用於設置直方圖條形的相對寬度和之間距離
bar(...,'style')----條形形狀,group,stack,detached
--矢量分布圖形
quiver(x,y,u,v)----x,y所指定的位置用箭頭代表矢量方向,u,v是對應點處的速度分量--維數相同
quiver(u,v)
quiver(...,scale)----可以設定箭頭長度
--誤差線圖形繪制
errorbar(y,e)----y是需要繪制的曲線,誤差柱上下寬度和為2e
errorbar2(x,y,e)
--離散數據繪制
將坐標點和x軸連接起來標示數據
stem(y)----繪制向量y的離散散桿圖,由系統自由產生數值數列作為x位置
stem(x,y)----x為橫坐標
stem(...,LineSpec)----可設置離散桿的線型
--偽色彩圖繪制
pcolor(c)----繪制矩陣c的偽色彩圖
pcolor(x,y,c)----在(x,y)處繪制
--極坐標圖形繪制
polar(theta,rho)----采用極角thera和級徑rho
polar(theta,rho,LineSpec)----LineSpec標志線型等
compass(z)----復數
feather(z)----箭頭
rose(z)、rose(z,n)、rose(z,x)----20柱、n柱、和x位置出發的極坐標柱狀圖
--------------------------------------------------------------------END--------------------------------------------------------------------------------