0
我有一個文件夾中有幾個文件,每個文件包含幾百個數據對(電阻R over Temperature T)。這些文件不包含相同數量的數據點... 我希望Matlab能夠讀取文件,遍歷它們並繪製每個文件的R(T),但都在一個圖中。此外,我希望文件名稱作爲不同圖形的圖例(例如,圖例中產生的文件'Example1.dat'的圖形應該被指示爲'Example1.dat')。 我在做什麼,現在是這樣的:Matlab:將文件循環,在一個圖中繪製數據並將文件名添加爲圖例
files=dir('*.dat') % Get all input files
hold on % multiple plots in one figure
for file=files' % loop over files
[T, R] = textread(file.name,'%f %f') %get data points
xlim([8.5 10]) % set limits
ylim([-0.5 2.5]) % set limits
plot(T,R) % plot
end
legend(files.name) % add legend
我得到看起來不正確的,因爲每次我嘗試它的時候,同樣的圖表圖例中得到一個不同的名稱。我該如何解決它?
可你細說「我嘗試每一次,在同一張圖中得到的傳說不同的名稱。」部分? –
那麼,如果我重新運行代碼,那麼圖中的相同圖(例如,來自文件'Example1.dat'的那個圖)在第一次試驗中獲得名稱'Example4.dat',並且名稱'Example1.dat'。 ..顯然,這不是我想要的。如果圖形來自文件XY,它會得到名稱XY而不是另一個... – DerAuenlaender
嘗試使用虛擬文件創建代碼,並且每次都能正常工作。 –