2017-01-13 7 views

答えて

1

1つの方法は、最初の軸の上に別の軸を作成し、その軸の上にx軸の位置を「上に」置くことです。ここに小さな例があります。

% Some example data 
d = linspace(now,now-7,7); 
y = randn(size(d)); 

% Create first axes 
ax1 = axes; 
plot(d,y); 
datetick(ax1, 'x', 'yy-mm-dd') 

% Create second axes 
ax2 = axes; 
plot(d,y,'Visible', 'off'); % No need to show doubles 
set(ax2, 'Position', ax1.Position, 'XAxisLocation', 'top', ... 
    'Color', 'none' ,'YTick', []); 
datetick(ax2, 'x', 'ddd') 

enter image description here

+0

はい、私はトップのx軸上の経過日数を表示する必要があります。以下が失敗した。 クリア;すべてを閉じる。 %150日以上のデータ例 d = linspace(now、now-150、20); x = linspace(1,20,20); y = randn(サイズ(d)); %最初の軸の作成 ax1 =軸; plot(d、y); datetick(ax1、 'x'、 'dd-mm-yy') xlabel( 'Date'); %第2軸の作成 ax2 =軸; plot(x、y、 'Visible'、 'off'); %double 'を表示する必要はありません。set(ax2、' Position '、ax1.Position、' XAxisLocation '、' top '、... ' Color '、' none '、' YTick '、[]、' Xtick ' linspace(1,20,20)); xlabel( 'days') – user2260180

+1

150日間のうちのすべてを表示しますか?私の例の 'datetick(ax2、 'x'、 'ddd')'の最後の部分をあなたのコードで忘れないでください。 '' Xtick '、linspace(1,20,20) 'は必要ありません。 – NLindros

関連する問題