DropDownとButtonを関連づける

UIfigure内に、DropDownとButoonとUiaxesの3つがあります。
現在はDropDownで項目(4つ)を選択すると、それに対応したフォルダ内にあるファイルをいくつか読み込み、Uiaxesに書き込むようになっています。
このファイル名は共通のものもあれば、各ファイル特有のものもあります(これは、ファイル名をDD.Valueと対応させることで解決済み)。
以下追加したい内容ですが、どのようにすればよいかわかりません。
Uiaxesのグラフが問題なければ、Buttonをクリックし、読み込んだデータを一つにする。
特にわからないことは、Buttonのコールバック関数をどのように設定するかです。
アドバイスよろしくお願いいたします。

4 Comments

Kojiro Saito
Kojiro Saito on 24 Nov 2022
確認です。読み込んだデータを1つにするとは、複数のファイルをzip化するという意味でしょうか?
美紗子 馬渕
美紗子 馬渕 on 24 Nov 2022
読み込みデータはtable形式で、すべて同じ列数です。
これをひとつの変数f(table形式)にまとめて、.mat形式で保存したいと考えております。
読み込みデータA[1,2,3]、読み込みB[4,5,6]、読み込みデータC[7,8,9]であれば、
f=[1,2,3;4,5,6;7,8,9]としたいです。
よろしくお願いいたします。
Kojiro Saito
Kojiro Saito on 24 Nov 2022
@美紗子 馬渕さん、コメントありがとうございます。
A、B、Cそれぞれの列名はcol1、col2、col3のように同じでしょうか?
美紗子 馬渕
美紗子 馬渕 on 24 Nov 2022
全く同じではないです。
t05G,t05R,t07BBなど製品名の略称になっています。
1字目はt、2字目は05、07、10のどれか、3文字目はアルファベット(個数はランダム)となっています。
DropDown内では、ファイルの読み込みにはdir関数を使っています(変数にいれて使用)。
そのため、ファイルの中を上から順番に読み込むというプログラムになっています。
よろしくお願いいたします。

Sign in to comment.

 Accepted Answer

Kojiro Saito
Kojiro Saito on 24 Nov 2022
joinやouterjoinが良いかと思いましたが、テーブル毎に列名が違うこともあるとのことなので、列の値だけ格納するような方法を考えてみました。
ボタンプッシュのコールバック関数に、以下のような処理を入れれば実現できそうです。
% 3つのテーブルのを縦に結合
f = [A.Variables;B.Variables;C.Variables];
% 配列からテーブルに変換
f = array2table(f);
save('result.mat', 'f')

1 Comment

美紗子 馬渕
美紗子 馬渕 on 28 Nov 2022
ご回答いただき、ありがとうございました。
ためしてみます!

Sign in to comment.

More Answers (0)

Categories

Products

Release

R2022a

Community Treasure Hunt

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

Start Hunting!