一幅图中怎样设置多个0坐标轴
本帖最后由 cboboc 于 2011-3-26 17:04 编辑我的目的是想将几幅图画在一起进行对比,但是我想将每幅图在下移的过程中,每幅图的横坐标都是以y=0为横坐标轴,而不是以下移的距离为坐标轴,也就是在这幅图中,第二条曲线不是以-2为横坐标的,而也是以y=0为横坐标轴的。
我采用的代码:
n=1:512;
t=n.*0.02;
x=sin(t);
y=cos(2*t);
z=x+y;
plot(t,x,'r')
hold on
plot(t,z-2,'m')
可以实现吗?我只知道hold on这样做图,把x轴坐标设成空。或者得用别的作图工具。 ???
plotyy(t,x,t,z-2) 本帖最后由 cboboc 于 2011-3-27 08:38 编辑
回复 3 # ChaChing 的帖子
谢谢chaching,不过我要的不是这样的效果,我想这样:做成下面这幅图这样的,只不过每一个曲线的坐标都是0,而不是曲线较上一条曲线的距离 回复 3 # ChaChing 的帖子
看见你说的画垂线的方法,那在一个图上画四条等间距的垂线怎么画呢? 回复 4 # cboboc 的帖子
好像看过类似的图, 就是一时没搜到!
旁边的没标誌吗? 就是没yticklabel?
若是的话, 或许使用strips可达到同样效果! 回复 5 # 刘颖慧 的帖子
可否明确些!? 本帖最后由 cboboc 于 2011-3-27 16:50 编辑
回复 7 # ChaChing 的帖子
我看了下strips,我要的效果就是将图中0,0.25,0.5, 0.75.。。。。。。这些横坐,变成不是以0.25,0.5, 0.75为横坐标,而是均以0为横坐标的效果,就像是在一幅图中有很多个小的坐标轴,相邻的横坐标轴都是上下相差一定的距离,比如说2,但是不是subplot那样的效果,而是下图这样的,只是将横坐标都变成0 ,而纵坐标均可设成一个固定的范围。 回复 8 # cboboc 的帖子
n=1:512; t=n.*0.02;
x1=sin(t); x2=cos(2*t); x3=x1+x2;
z=; strips(z,length(x1))
set(gca,'YTickLabel',[]); % set(gca,'YTickLabel',) % 或全为0
回复 9 # ChaChing 的帖子
哦对啊就是这样的效果啊!!!谢谢chaching,我赶快试试去{:{25}:} 回复 7 # ChaChing 的帖子
hh=axis;
xx=(hh(1)+hh(2))/2;
hold on;
plot(,,'r');
这个是看到你回复别人的画一条垂线的方法,我看了一下只在0,1之间的。
那么如果想画多条等间距的垂线该怎么画呢? 回复 7 # ChaChing 的帖子
load iris.dat
x=iris(1:10,1:4);
for i=1:10
plot(x(i,:),'r');
plot(x(i,:),'go');
hold on;
end
就是把这里面的所有绿色标注的点用竖线连起来。我的图传不上去,麻烦ChaChing自己运行一下。 刘颖慧 发表于 2011-3-28 10:22 static/image/common/back.gif
回复 7 # ChaChing 的帖子
load iris.dat
是的 iris数据 回复 13 # 刘颖慧 的帖子
抱歉! 刚才发现LS把我高估了! 原来iris.dat是matlab自带的资料!
水平有限, 还没玩过fuzzy! 重申下, 每个人专业不同, 有时候说明或许好些
最简单的方式
load iris.dat; x=iris(1:10,1:4);
for i=1:10
plot(x(i,:),'r'); plot(x(i,:),'go'); hold on;
end
for jj=1:4, plot(jj*ones(size(x,1)),x(:,jj),'b'); end
回复 14 # ChaChing 的帖子
谢谢,不好意思ChaChing,一时没描述清楚,带来的不便还请见谅。
页:
[1]
2