1

カラーバーのタイトルの位置を変更したいと思います (カラーバー自体ではありません)。次のコードを使用してみました:

cb = colorbar;                                    
set(get(cb,'title'),'string','Dislocation Density(m^{-2})'); 

lbpos = get(cb,'title');
pos = get (lbpos,'position'); 
set(lbpos, 'position', pos) ;

私は3つの問題を抱えています:

  • ベクトルには 4 つの数値がありpos、カラーバーと重ならないようにタイトルを上に移動するには、どの数値を変更すればよいかわかりません。
  • いくつかの数字を変更しようとしましposたが、何をしてもタイトルが下に移動してカラーバーと重なってしまいます。
  • maximizeまた、右上のボタンでグラフ全体を拡大しようとすると、カラーバーのタイトルの位置も変わってしまいます。カラーバーのタイトルを再配置しようとしないと、これは起こりません。
4

1 に答える 1

1

text objectのドキュメントによると、 text オブジェクトの は が の場合、'Position'3 つの数値 [x,y,z] しかありません'Units'dataこれはデフォルト設定でもあります。したがって、カラーバーのテキストが何らかの形で変更されていると思います。これを試してみましょう:

cb = colorbar;                                    
set(get(cb,'title'),'string','Dislocation Density(m^{-2})'); 
lbpos = get(cb,'title');

% change Units to data
set(lbpos,'Units','data');
% get position, should have 2 or 3 values
pos = get (lbpos,'position'); 
% move up a bit
pos(2) = pos(2)+3;
set(lbpos, 'position', pos);
于 2015-10-05T19:18:44.613 に答える