matlab_simulink_示波器_scope_圖片保存上課講義_第1頁
matlab_simulink_示波器_scope_圖片保存上課講義_第2頁
matlab_simulink_示波器_scope_圖片保存上課講義_第3頁
matlab_simulink_示波器_scope_圖片保存上課講義_第4頁
matlab_simulink_示波器_scope_圖片保存上課講義_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、Good is good, but better carries it.精益求精,善益求善。matlab_simulink_示波器_scope_圖片保存-MatlabFigure圖形保存以及Simulink中Scope窗口坐標(biāo)標(biāo)注(label)的設(shè)置收藏1、我們使用Matlab繪制出數(shù)據(jù)的各種圖形需要保存的時(shí)候,不少同學(xué)是直接用屏幕截圖的辦法來做的,但這樣出來的圖并不清晰,不便于后續(xù)應(yīng)用和處理,并且往往不符合發(fā)表論文的要求,很多論文是要求用.eps格式的圖片的。實(shí)際上,我們可以有下面兩種更好的處理方法:(1)在論文里插入圖片在Matlab的Figure窗口,點(diǎn)擊菜單欄的Edit,選擇CopyF

2、igure,然后轉(zhuǎn)到你的文檔界面,把光標(biāo)放到需要插入圖片的位置,然后Ctrl+C,你就可以得到比較清晰的圖片了。需要注意的是,這時(shí)候的圖片有相當(dāng)一部分空白區(qū)域,你可以用word圖片工具欄的裁剪功能把圖片空白區(qū)域消除掉。另外,如果需要對圖片的大小進(jìn)行拉伸,最好不要直接用鼠標(biāo)拖拉,這樣容易導(dǎo)致圖中的點(diǎn)線分布變形,可以右鍵點(diǎn)擊圖片,選擇設(shè)置圖片格式,在大小標(biāo)簽的縮放欄里,設(shè)置圖片的大小。(2)直接保存Figure為了便于后續(xù)處理和應(yīng)用,建議大家形成一個良好習(xí)慣,即把繪制所得的Figure窗口直接保存為.fig文件,以后你就可以多次打開它,對圖像進(jìn)行修改處理,例如加注標(biāo)簽(label)等,也可以打開.

3、fig文件把所顯示的圖像轉(zhuǎn)存為其它格式的文件,例如.eps、.jpg等。2、在做Simulink仿真時(shí),使用的Scope波形顯示模塊實(shí)際上也是一種Figure窗口,不過Matlab把Scope的菜單欄隱藏起來,只提供了幾個有限的參數(shù)設(shè)置。如果需要對Scope中的圖加上坐標(biāo)、更改界面背景色等,沒有菜單欄就基本上無從下手了。可以在打開你的mdl文件之后,在Matlab的命令行輸入以下指令來恢復(fù)顯示Scope的Figure菜單欄:set(0,ShowHiddenHandles,on);set(gcf,menubar,figure);這樣Scope窗口就如下所示:然后點(diǎn)擊菜單欄的Edit,可以選擇Co

4、pyFigure來保持波形圖,也可以選擇FigureProperties來調(diào)整Scope的各種圖形屬性,包括添加xlabel、ylabel、title,更改背景顏色,調(diào)整波形曲線的線型、粗細(xì)等等:P.S.:除了上面說的那兩行指令外,在網(wǎng)上還找到一段相似的程序,不過我使用時(shí)Matlab提示第4行代碼出現(xiàn)Error,不知是何原因,也貼在這里大家分析下吧,呵呵。shh=get(0,ShowHiddenHandles);set(0,ShowHiddenHandles,On)set(gcf,menubar,figure)set(gcf,CloseRequestFcn,closereq)set(gcf,D

5、efaultLineClipping,Off)set(0,ShowHiddenHandles,shh)方法一:使用Matlab命令,直接保存為圖片set(0,ShowHiddenHandles,On)set(gca,color,w)%設(shè)置背景顏色saveas(gcf,yourpic.jpg)方法二:使顯示figure的菜單set(0,ShowHiddenHandles,On)set(gcf,menubar,figure)用simout把波形輸出,存儲格式為array即;同時(shí)把時(shí)間一塊放simout輸出!用plot(t,simout)即可把圖畫出來!簡單一點(diǎn)就是把采集的數(shù)據(jù)保存到Tofile文件

6、里后,直接load變量名,用plot命令就可以得到圖,再用附件自帶的畫圖工具就可以剪輯下來了要使用toworkspaces模塊,將信號y以及時(shí)間t的信號送到工作空間(如圖所示),t,和y是在toworkspaces模塊自定義的變量名,注意在saveformat選array!然后用plot(t,y)繪圖,繪出圖后,使用edit菜單里的copyfigure拷貝圖形,再到word里粘貼即可,這樣拷貝的圖形效果較好。你可以在edit菜單里的copyoptions設(shè)置clipboardformat為metafile,這樣拷的圖形不會有黑邊框!看到網(wǎng)上有的同行問怎么改示波器的背景,把示波器波形復(fù)制到Wor

7、d中,我有兩種方法,第一種是我一個同學(xué)告訴我的,通過命令對示波器進(jìn)行操作。具體如下shh=get(0,ShowHiddenHandles);set(0,ShowHiddenHandles,On)set(gcf,menubar,figure)set(gcf,CloseRequestFcn,closereq)set(gcf,DefaultLineClipping,Off)set(0,ShowHiddenHandles,shh)如何將matlab中的scope圖形保存下來,或者直接保存到word中呢?其實(shí)至少有三種方法,下面就詳細(xì)說明一下這三種方法.1、軟件截圖,這個就不多說了2、使用Matlab命

8、令,直接保存為圖片,在這個方法中要注意打開隱藏的句柄,運(yùn)行之后就在Matlab的當(dāng)前路徑下得到一個白色背景的jpg文件.set(0,ShowHiddenHandles,On)set(gca,color,w)saveas(gcf,mypic.jpg)3、使用figure的菜單來保存圖片set(0,ShowHiddenHandles,On)set(gcf,menubar,figure)此時(shí)那個scope是不是多了一個菜單欄了,現(xiàn)在使用editcopyfigue就可以把圖片復(fù)制到剪貼板中了.下面說一下Simulink利用Scope輸出及繪制仿真波形技巧在用Simulink做仿真時(shí),我們經(jīng)常會用到示波

9、器Scope來觀察波形,它可以對波形進(jìn)行局部放大、按橫、縱座標(biāo)放大,非常方便,但是如果我們要保存波形時(shí),就最好別直接拷貝Scope波形了,因?yàn)樗谋尘笆呛诘?,而且不能進(jìn)行線形修改和標(biāo)注,不適合作為文檔用圖。一般的做法是將數(shù)據(jù)輸出到工作空間,然后用畫圖指令Plot畫圖。輸出到工作空間的方法一般有這么幾種:1添加ToWorkspace模塊;2添加out模塊;3直接用Scope輸出。在此我們選用方法3來說明用法。當(dāng)然不是說放一個Scope就能數(shù)出數(shù)據(jù)的,需要對Scope進(jìn)行設(shè)置。設(shè)置界面如下:把Limitdatapointstolast勾掉,因?yàn)楹苡锌赡苣愕臄?shù)據(jù)會超過5000個。勾選Savedata

10、toWorkspace,變量類型可以選結(jié)構(gòu)體,結(jié)構(gòu)體帶時(shí)間,以及向量.下面以一個例子分別介紹三種變量類型的畫圖方法。1輸出類型為向量形式。從圖上看到,輸出了兩維時(shí)間序列,而實(shí)際輸出到工作空間的變量ScopeData為三維序列,其中第一列為時(shí)間,這正好為我們畫圖提供了方便。我們可以采用畫圖命令如下:figure;plot(ScopeData(:,1),ScopeData(:,2),LineWidth,1.5);holdon;plot(ScopeData(:,1),ScopeData(:,3),r:,LineWidth,1.5);legend(正弦波,鋸齒波);holdoff;當(dāng)然你還可以采用其他

11、繪圖方式,如采用Subplot方式。2輸出類型為StructurewithTime。即結(jié)構(gòu)體帶時(shí)間。我們可以看一下這個結(jié)構(gòu)體包含哪些東西。在CommandWindow里直接輸入變量名。ScopeData=time:51x1doublesignals:1x1structblockName:untitled/Scope可見,該結(jié)構(gòu)體包含了時(shí)間序列,信號結(jié)構(gòu)體,以及我的框圖名。實(shí)際上我們的輸出信號都包含在signals這個結(jié)構(gòu)體里了,我們接著可以再看看signals結(jié)構(gòu)體的組成部分。我們輸入ScopeData.signals。ans=values:51x2doubledimensions:2label:title:plotStyle:00可以看到,values是一個51x2的double型矩陣,它正好是我們輸出的數(shù)據(jù)。我們采用這樣的畫圖命令即可完成畫圖:figure;plot(ScopeData.time,ScopeData.signals.values(:,1

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論