在一个窗口中将两个数字更改为两个不同的刻度

时间:2014-12-11 00:43:09

标签: matlab plot matlab-figure figures

基本上我试图将y轴上的刻度更改为不同但在两者上保持相同的x轴刻度。我看过网上和教科书,但无法得到我想要的东西。 我试图将顶部数字的y轴标记为(-1,0,1,2),将底部数字标记为(-0.2,0,0.2,0.4,0.6),并将两个数字标记为x -axis(0,0.5,1,1.5,2)

x = linspace(0,2)
y1 = sin(2*pi*x);
y2 = exp(-0.5*2*pi*x).*sin(2*pi*x);


figure
subplot(2,1,1);
plot(x,y1,'rs')

subplot(2,1,2);
plot(x,y2,'k*')

1 个答案:

答案 0 :(得分:1)

这是一种方法。您需要更改轴的YTickXTick属性,以及顶部绘图的YLim属性,因为默认情况下,Matlab会尝试使轴与数据范围相匹配你有。

clear
clc

x = linspace(0,2);
y1 = sin(2*pi*x);
y2 = exp(-0.5*2*pi*x).*sin(2*pi*x);

figure
subplot(2,1,1);
hPlot1 = plot(x,y1,'rs');

%// The important part.
set(gca,'YLim',[-1 2],'YTick',-1:1:2,'XTick',0:.5:2)

subplot(2,1,2);
hPlot2 = plot(x,y2,'k*');

set(gca,'YTick',[-0.2,0,0.2,0.4,0.6],'XTick',0:.5:2) 

看起来像这样:

enter image description here