plot()関数を使用してグラフを描画していますが、デフォルトでは軸が表示されません。
グラフ上でx = 0とy = 0の軸を表示するにはどうすればよいですか?
実際、私のグラフは次のようなものです:
y =に対応する水平線が必要です。 どうすれば入手できますか?
一部の設定を変更していない限り、デフォルトでは、plot does軸を表示します。以下をお試しください
hold on; % make sure no new plot window is created on every plot command
axes(); % produce plot window with axes
plot(% whatever your plot command is);
plot([0 10], [0 0], 'k-'); % plot the horizontal line
これはMatlabで動作するはずです:
set(gca, 'XAxisLocation', 'Origin')
オプションは、下、上、原点です。
Y.axisの場合:
YAxisLocation; left, right, Origin
貧しい人の解決策は、x = 0とy = 0の線を単純にグラフ化することです。線の太さと色を調整して、グラフと区別することができます。
軸をエッジではなく十字線のように見せたい場合は、Matlab FEXの axescenter を試してください。
編集:これはすでにJitse Nielsenによって上記のリンクで指摘されていることに気づきました。
多分 grid on
十分であろう。
私はこれが少し遅れていることを知っていますが、私の同僚は何かを理解しました:
figure, plot ((1:10),cos(Rand(1,10))-0.75,'*-')
hold on
plot ((1:10),zeros(1,10),'k+-')
text([1:10]-0.09,ones(1,10).*-0.015,[{'0' '1' '2' '3' '4' '5' '6' '7' '8' '9'}])
set(gca,'XTick',[], 'XColor',[1 1 1])
box off
@Martijn関数呼び出しの順序が少しずれています。代わりにこれを試してください:
x=-3:0.1:3;
y = x.^3;
plot(x,y), hold on
plot([-3 3], [0 0], 'k:')
hold off
@Luisaの回答に触発されて、関数 axes を作成しました
x = linspace(-2,2,101);
plot(x,2*x.^3-3*x+1);
axes0
上記のリンクから機能をダウンロードし、使用方法の詳細を入手できます