Matlab實現(xiàn)數(shù)據(jù)的動態(tài)顯示方法
對于真實系統(tǒng)或者仿真平臺,數(shù)據(jù)是增量式的產(chǎn)生的。Matlab除了強大的矩陣運算外,還具有強大的數(shù)據(jù)可視化庫。由于靜態(tài)畫圖的方法較多,本文只針對增量式數(shù)據(jù)流的動態(tài)顯示。本文主要介紹幾種Matlab實現(xiàn)數(shù)據(jù)的動態(tài)顯示方法。方法主要有兩種:
hold on
set函數(shù)與drawnow函數(shù)組合
hold on 方法
1. 方法介紹
此種方法比較原始,適合于即時數(shù)據(jù),原理是先畫上一幀,接著保留原始圖像,追加下一幀圖像,此種方式比較繁瑣,涉及畫圖細(xì)節(jié),并且沒有完整并連續(xù)的Line對象數(shù)據(jù)。此種方法需要注意的地方是,若想生成連續(xù)的線圖,則每次plot至少兩個點,原理大家都應(yīng)該理解,兩點一線嘛!如果想每次一個點增量式的畫圖,則線型選擇'.'。
2. 代碼與圖例
t=0; m=0; t1=[0 0.1]; %若為'-'至少同時輸入兩個點,兩點一線嘛!?。《?.'則不用 m1=sin(t1); p = plot(t1,m1,'-b','MarkerSize',5); x=-1.5*pi; axis([x x+2*pi -1.5 1.5]); grid on; for i=1:1000 hold on t=0.1*i; %下一個點 m=t-floor(t); t1=t1+0.1; %下一段線 m1=sin(t1); p = plot(t1,m1,'-b','MarkerSize',5); x=x+0.1; axis([x x+2*pi -1.5 1.5]); pause(0.01); end
set函數(shù)與drawnow函數(shù)組合
1. 方法介紹
這種模式比較適合畫動畫,效率比較高,刷新閃爍小,適合即時數(shù)據(jù),最終的Line結(jié)構(gòu)數(shù)據(jù)完整。
了解此方法之前要搞清楚 Plot函數(shù)的原型是什么: 每個Plot由一個句柄維護(hù),而可以通過set函數(shù)對該句柄對應(yīng)的plot參數(shù)在線的更新,若在線更新plot的數(shù)據(jù),則可實現(xiàn)動態(tài)顯示的效果。
最后使用drawnow函數(shù)對plot進(jìn)行刷新。
2. 代碼與圖例
t=[0] m=sin(t) p = plot(t,m,'EraseMode','background','MarkerSize',5); x=-1.5*pi; axis([x x+2*pi -1.5 1.5]); grid on; for i=1:1000 t=[t 0.1*i]; m=[m sin(0.1*i)]; set(p,'XData',t,'YData',m) drawnow x=x+0.1; axis([x x+2*pi -1.5 1.5]); pause(0.01); end
總結(jié)
本文介紹了兩種實現(xiàn)即時數(shù)據(jù)可視化的方法。也就是看上去的動態(tài)顯示效果。分別給出了兩種方法的原理介紹和示例程序與圖例。相信這兩個簡單的例子經(jīng)過你的運用可以變幻出多姿多彩的數(shù)據(jù)可視化效果。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持我們。
欄 目:C語言
本文標(biāo)題:Matlab實現(xiàn)數(shù)據(jù)的動態(tài)顯示方法
本文地址:http://mengdiqiu.com.cn/a1/Cyuyan/772.html
您可能感興趣的文章
- 01-10數(shù)據(jù)結(jié)構(gòu)課程設(shè)計- 解析最少換車次數(shù)的問題詳解
- 01-10數(shù)據(jù)結(jié)構(gòu)課程設(shè)計-用棧實現(xiàn)表達(dá)式求值的方法詳解
- 01-10使用OpenGL實現(xiàn)3D立體顯示的程序代碼
- 01-10求斐波那契(Fibonacci)數(shù)列通項的七種實現(xiàn)方法
- 01-10C語言 解決不用+、-、×、÷數(shù)字運算符做加法
- 01-10使用C++實現(xiàn)全排列算法的方法詳解
- 01-10用C++實現(xiàn)DBSCAN聚類算法
- 01-10深入全排列算法及其實現(xiàn)方法
- 01-10全排列算法的非遞歸實現(xiàn)與遞歸實現(xiàn)的方法(C++)
- 01-10用C語言實現(xiàn)單鏈表的各種操作(一)


閱讀排行
本欄相關(guān)
- 04-02c語言函數(shù)調(diào)用后清空內(nèi)存 c語言調(diào)用
- 04-02func函數(shù)+在C語言 func函數(shù)在c語言中
- 04-02c語言的正則匹配函數(shù) c語言正則表達(dá)
- 04-02c語言用函數(shù)寫分段 用c語言表示分段
- 04-02c語言中對數(shù)函數(shù)的表達(dá)式 c語言中對
- 04-02c語言編寫函數(shù)冒泡排序 c語言冒泡排
- 04-02c語言沒有round函數(shù) round c語言
- 04-02c語言分段函數(shù)怎么求 用c語言求分段
- 04-02C語言中怎么打出三角函數(shù) c語言中怎
- 04-02c語言調(diào)用函數(shù)求fibo C語言調(diào)用函數(shù)求
隨機閱讀
- 01-10C#中split用法實例總結(jié)
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 01-10delphi制作wav文件的方法
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 04-02jquery與jsp,用jquery
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 01-11ajax實現(xiàn)頁面的局部加載
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改