既存の複数のグラフを1つのグラフにまとめる
145 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
同じ様式で異なった数値に対して作成した図が9種類保存してあります。これをfigure 1-9として1つにまとめるにはどうしたら良いでしょうか?subplotは現在進行形で作成しているデータのみがサブプロットされるので使えませんでした。
1 commentaire
Réponse acceptée
Kenta
le 1 Jan 2020
figure
for i=1:size(x1,1)
subplot(3,2,i)
bar(x1(i,:),y1(i,:));hold on
end
こんにちは、データを添付していただきありがとうございます。
info=struct2table(dir);
name={info.name};
figure;
for i=3:numel(name{1})
hfig = open('LT12202019002 Ch02 unit a ftr1.fig');hold off
x1(i-2,:) = hfig.Children.Children.XData;
y1(i-2,:) = hfig.Children.Children.YData;
end
figファイルの添付で、データが直接受け取れなかったので、下のほうのコードでデータを取得しています。
上のコードでは、barの後のコマンドが、Saitoさまのものとは異なると思いますが、適宜、変更をお願いします。
複数のプロットはhold onとすれば、前のプロット情報を保持しながら、さらに新たなプロットを作ることができます。
さらに余白をちいさくしたい、などがあれば、このMatlab Answersの検索欄から、キーワード検索すれば出るので、いろいろとカスタマイズしてもらえると幸いです。
0 commentaires
Plus de réponses (2)
Saito
le 4 Jan 2020
1 commentaire
Kenta
le 5 Jan 2020
for i=1:(グラフの数)
subplot(9,1,1)
bar(x1(1,:),y1(1,:));%x1の部分を適宜変更する
hold on
xlim([-250 800]);
xticks(-2500:100:800);
ylim([0 100]);
yticks(0:50:100);
end
上のように、グラフの数だけfor文で繰り返せばいいと思います。
今回は、質問者さまが、生データではなく、figファイルを添付されていたので、figファイルから生データの値を取り出すために関数openで図を開いてから棒グラフの値を取得しています。実際は、何かしらの変数やセンサーデータなどから値を取得しているはずで、x1の代わりにそちらの変数に書き換えていただければと存じます。
Voir également
Catégories
En savoir plus sur ライン プロット dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!