2014-03-13 302 views
0

我目前正在做一個需要在Matlab中使用line函數的項目。使用圖上的line函數繪製線。代碼是這樣的:在Matlab中將位圖圖像保存爲位圖圖像

for i=0:N-1 
    for j=0:N-1 
     a = ... 
     b = ... 
     line(a,b,'...','.5') 
    end 
end 

這是一個函數的一部分,並被重複調用。因此創建了諸如這些的多個圖。一旦我開始執行程序,我想將這些圖自動保存爲位圖圖像。有沒有辦法做到這一點?

我試過使用手柄,但不是很成功。 imsave函數沒有幫助,因爲line不返回它生成的圖的矩陣。我看着saveas,但不能走得很遠。有什麼辦法可以做到嗎?

+0

看來您的問題更多地是關於保存一個圖形而不是行函數本身,對?也許你可以讓你的問題更具體一些......有相當多的文章圍繞該主題([this](http://stackoverflow.com/questions/15984630/how-to-save-matlab-figure-as -jpeg -using-saveas-without-the-image-coming-off-ba?rq = 1)或[this](http://stackoverflow.com/questions/12160184/how-to-save-a-figure-在-MATLAB功能於從最命令行))。你也可以看看['print'](http://www.mathworks.ch/ch/help/matlab/ref/print.html) - 儘管名字也可以保存到文件中。 – mbschenkel

+0

這是關於保存數字的更多。由於我使用的是重複調用'line',因此圖形顯示了大量的行。我可以將這些圖表保存爲.bmp文件,但圖像質量有相當大的下降。感謝您的其他鏈接。他們相當有幫助。 – mysticsasuke

回答

2

print function用於將圖形內容保存到位圖圖像(或postscript或PDF)。例如,

print -dpng 'test.png' 

會將當前數字保存爲當前目錄中的png。 (請參閱文檔中的其他技巧,例如如何使它看起來與屏幕上的尺寸相同,如果這是您想要的尺寸。)

+1

'-dbmp'將給出位圖圖像 – David

+0

@David - 我想OP是使用通用術語(位圖圖像​​而不是矢量圖形),而不是舊的Windows默認文件格式。但是,是的,'-dbmp'將產生Windows位圖格式。 –

+0

夠公平的,只是想我會提到它!儘管如此,考慮使用矢量圖形(ep,例如'-depsc2')。根據你在做什麼,他們可以看起來比位圖圖片好得多。 – David