How can i make this code snippet a function?

data1 = load('data1.mat')
data2 = load('data2.mat')
data3 = load('data3.mat')
data4 = load('data4.mat')
full_val = cat(1,data1,data2,data3,data4);
This is where i need the function:
plot(data1.val(1,:));hold on; plot(data2.val(1,:));hold on;plot(data3.val(1,:));hold on;plot(data3.val(1,:));
we can easily how this can become an issue on scale i just want a function to keep drawing the function inside the nx1 matrix full_val across data n

 採用された回答

Stephen23
Stephen23 2018 年 7 月 20 日
編集済み: Stephen23 2018 年 7 月 21 日

0 投票

for k = 1:numel(full_val)
plot(full_val(k).val(1,:))
hold on
end
You could also use a loop when load-ing the .mat files.
Note that (assuming compatible sizes) you could plot all of the data at once, without a loop:
tmp = cat(3,full_val.val);
plot(squeeze(tmp(1,:,:))

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeMATLAB についてさらに検索

質問済み:

2018 年 7 月 20 日

編集済み:

2018 年 7 月 21 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by