Figure配列にあるグラフの軸をすべて変更する方法
Afficher commentaires plus anciens
spectrogram関数を使いfigureを作成しており、複数のfigureを一つにまとめfigureファイル(.fig)として保存しております。
このとき.figファイルをMATLAB上で取り込み、figure配列にある各figureのカラーマップを変更するため、以下のようなプログラムを作成しましたがうまく動作しませんでした。
このプログラムでは変数figに入っている最後のfigureのみカラーマップがグレースケールに変更され、変更されたfigure1枚がコピーされて各fig(i)に同じものが代入されている状態になっています。
それぞれのfigureごとにカラーマップを変更する方法を教えて頂きたいです。
fig=openfig('all.fig','invisible'); % all.figには10個のfigureが入ってます
for i=1:10
colormap(fig(i),'gray');
end
Réponses (2)
Naoya
le 8 Juin 2018
こちらでも簡単な下記のような簡単なコードで再現を試みてみましたが、特に報告頂いた症状は確認できていません。 以下のコードをお試しいただき、症状はあらわれますでしょうか?
figure,spectrogram(rand(1,100));
fig(1) = gcf;
figure,spectrogram(rand(1,100));
fig(2) = gcf;
figure,spectrogram(rand(1,100));
fig(3) = gcf;
figure,spectrogram(rand(1,100));
fig(4) = gcf;
savefig(fig,'all')
close all,clear all
fig = openfig('all.fig');
for i = 1:length(fig), colormap(fig(i),'gray'), end
Haruki Yamaguchi
le 11 Juin 2018
0 votes
1 commentaire
Naoya
le 11 Juin 2018
正常動作を確認できたということで、安心しました。
matファイルへ保存する前段で、figure配列それぞれの Visibleプロパティを 0 へ設定することで、 load 経由でインポートする際、Figure の表示を回避することができるかと思います。
Catégories
En savoir plus sur 書式設定と注釈 dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!