matlab的可视化视频,MATLAB的可视化(一)
轉摘:MATLAB的圖視化
1. MATLAB的圖視化概論
數據圖視化能使人們用視覺器官直接感受到數據的許多內在本質 。因此,數據可視化是人們研究科學、認識世界所不可缺少的手段。MATLAB不僅數值計算方面是一個優秀的科技應用軟件,? ?在數據可視化方面也具有上佳表現。
MATLAB具有二維、三維乃至四維的圖形表現能力。可以從線型、邊界面、色彩、渲染、光線、視角等方面把數據的特征表現出來。
MAT LAB的圖視化功能是建立在一組“圖形對象”的基礎之上的。“圖形對象”的核心是圖形的句柄(Granhics Handle)操作。
MATLAB的有兩個層次的繪圖指令:
(1) 底層(Low-leve)繪圖指令:是直接對句柄進行操作。
底層繪圖指令控制和表現數據圖形的能力比高層繪圖指令強。特點是靈活多變,較難掌握。
(2) 高層(High-level)繪圖指令:建立在底層指令上的繪圖指令。
最常用的是高層繪圖指令。高層繪圖指令簡單明了容易掌握,本章介紹高層繪圖指令。本章內容按“前易后難”的原則安排。
最常用的二個繪圖指令是: plot ;mesh
2. 二維圖形
(1) plot函數
以下例子用來體會plot 的基本的繪圖原理。
例:繪向量得折線圖:
hold on
x=[2.3,4.3,3,4,4.9,1.5,2.8,4.6,5.5];
plot(x)
plot(x,'ro')
注1:plot 繪圖的基本素材是二維點組(x i,y i)(1=1,2,….n)。
二維點組(x i,y i)(1=1,2,….n)的定義形式:
*1) x=[2.3,4.3,3,4,4.9,1.5,2.8,4.6,5.5];
*2) y=0:0.1:5
這種定義方法,默認橫坐標是自然數(1,2,3,4…..)
*3)? ? t=0:pi/100:2*pi
x=sin(t)
*4)? ?x=[1.5,2.3,2.8,3,4,4.3,4.6,4.9,5.5];
y=x.^2
這種定義方法,要注意自變量保持升序。自變量與應變量的體積的一致。
注2:plot 繪圖的基本原理是依(x i,y i)(1=1,2,….n)排列順序用直線連接。曲線光滑與否與點數相關。
hold off
t=0:pi/3:2*pi;
x=sin(t);
plot(t,x,'r-')
hold on
t=0:pi/5:2*pi;
x=sin(t);
plot(t,x,'b-')
(1) 坐標系定制
用于對坐標軸進行管理與控制,如刻度,外觀,文字說明等
*1)坐標軸定制指令(axis)
'axis'用于對坐標軸刻度進行管理與控制。指令形式與作用說明如下:
AXIS([XMIN XMAX YMIN YMAX]) 設置 x- and y-axes刻度。
AXIS([XMIN XMAX YMIN YMAX ZMIN ZMAX]) 設置 x- and y-axes和 z-axes刻度。
V = AXIS 返回當前圖形行向量的刻度設置[XMIN XMAX YMIN YMAX]或([XMIN XMAX YMIN YMAX ZMIN ZMAX])。
AXIS AUTO 返回刻度設置的系統默認值
AXIS TIGHT 依數據設置刻度
AXIS IJ 設置坐標軸的原點在左上角
AXIS XY 設置坐標軸的原點在左下角
AXIS EQUAL 設置坐標軸的比例因子相等。
AXIS IMAGE
AXIS SQUARE
AXIS NORMAL
AXIS VIS3D
AXIS OFF
AXIS ON
例:
XMIN=1;
XMAX=10;
YMIN=10;
YMAX=100;
AXIS([XMIN XMAX YMIN YMAX])
plot([1,50,3,60,5,20,3])
*2)其它坐標系:polar
例1:polar(THETA, RHO)
t=0:0.1:2*pi;
r=t;
polar(t,r)
例2:對數-對數
t=0:0.1:2*pi;
r=t;
semilogx(t,r)
(2) 圖視效果強化
例:加入格柵;坐標軸標志;文本說明等
clf;? ?hold off
t=linspace(0,pi*3,30);
x=sin(t);
hold on
y=cos(t);
plot(t,x,'r-',t,y,'g-')
grid? ? % 加入格柵
xlabel('x軸')
ylabel('y軸')
title('正弦與余弦曲線')
text(1,0,'正弦')? ? %text(x,y,'正弦')
text(3,0,'余弦')
legend('sin(x)','cos(x)',3)
%LEGEND('string',Pos) places the legend in the specified,
%? ?? ???0 = Automatic "best" placement (least conflict with data)
%? ?? ???1 = Upper right-hand corner (default)
%? ?? ???2 = Upper left-hand corner
%? ?? ???3 = Lower left-hand corner
%? ?? ???4 = Lower right-hand corner
%? ?? ? -1 = To the right of the plot
%按鼠表 left mouse button 拖legend到指定的位置
(3) 子圖
clf;? ?hold off
t=linspace(0,pi*3,30);
x=sin(exp(t));
subplot (2,2,2)? ?%(n,m,p(0
plot (t,x,'r-')
y=exp(sin(t));
subplot (2,2,3)
plot (t,y,'g-')
(4) 特殊二維圖形
例:誤差圖(errorbar)
clf;x=0:0.1:4;
y=zeros(size(x));e=rand(size(x));
yu=y+e;yd=y-e;
errorbar(x,y,e)
hold on
plot(x,yu,'r-');plot(x,yd,'r-');
(5) 繪圖工具
mmaxes prop value…? ?? ?? ?? ?? ?? ?? ?? ? 修改繪圖坐標軸的屬性
mmcxy(or)xy—mmcxy? ?? ?? ?? ?? ???顯示圖上鼠標的x-y坐標
mmdraw prop value…? ?? ?? ?? ?? ?? ?? ?? ?在圖上畫直線
rnmfill(x,y,z,c,lb,ub)? ?? ?填充兩條曲線間區域
mmgetxy(N)? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ???使用鼠標獲取x-y坐標
mmline prop value…? ?? ?? ?? ?? ?? ?? ?? ???修改所畫線條的屬性
mmtile? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ???平鋪多圖形窗口
mmtext(' optional text')? ?? ?? ?? ?? ?? ?在圖上放置或拖曳文本
mrnzoom? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ? 用橡皮框縮放坐標軸
mmzap object? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?使用鼠標刪除文本,線型或坐標軸
mmfont prop value? ?? ?? ?? ?? ?? ?? ?? ?? ?? ? 修改文本字體屬性
例:
clf;x=0:0.1:4;
y=zeros(size(x));e=rand(size(x));
yu=y+e;yd=y-e;
errorbar(x,y,e)
hold on
plot(x,yu,'r-');plot(x,yd,'r-');
yu(1)=0;yu(41)=0;
fill(x,yu,'r');
yd(1)=0;yd(41)=0;
fill(x,yd,'g');
總結
以上是生活随笔為你收集整理的matlab的可视化视频,MATLAB的可视化(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab中方差直方图,如何规范直方图
- 下一篇: 高斯粒子滤波matlab,粒子滤波(Pa