plotyy双纵坐标绘图请教
双纵坐标图代码如下问题是:我画出图形后,曲线y不知怎么修改它的颜色和粗细虚实,只有曲线s可以在图形中直接采用鼠标修改,请高手指点一下,
也就是说只能修改其中的一条曲线,另一条曲线不知道怎样才能修改它的颜色和虚实
clf;
dx=0.1;
x=0:dx:4;
y=x.*sin(x);
s=cumtrapz(y)*dx; %梯形法求累计积分
plotyy(x,y,x,s) 原帖由 aiguo 于 2007-11-22 11:34 发表 http://www.chinavib.com/forum/images/common/back.gif
双纵坐标图代码如下
问题是:我画出图形后,曲线y不知怎么修改它的颜色和粗细虚实,只有曲线s可以在图形中直接采用鼠标修改,请高手指点一下,
也就是说只能修改其中的一条曲线,另一条曲线不知道怎样才能修改它的颜 ...
请搜索版面,尤其是看看精华帖
回复 #2 eight 的帖子
哪个位置有啊,找不到呢,请八哥超链接一下,行不? 原帖由 aiguo 于 2007-11-22 11:45 发表 http://www.chinavib.com/forum/images/common/back.gif哪个位置有啊,找不到呢,请八哥超链接一下,行不?
自己找找吧,我也忘记了。搜索 plotyy 试试吧
回复 #4 eight 的帖子
通过高人的贴子,下面的代码解决了部分问题,还有一点始终解不了:左右两边纵轴的颜色怎样改得与相应两曲线的颜色一致?clf;
dx=0.1;
x=0:dx:4;
y=x.*sin(x);
s=cumtrapz(y)*dx;
=plotyy(x,y,x,s);
set(get(AX(1),'Ylabel'),'String','Left Y-axis','color','k','linewidth',1.2)
set(get(AX(2),'Ylabel'),'String','Right Y-axis','color','r','linewidth',1.2)
set(H1,'LineStyle','--','color','k','linewidth',1.2)
set(H2,'LineStyle',':','color','r','linewidth',1.2)
回复 #5 aiguo 的帖子
答案就在你发的代码里,读懂后稍作改动回复 #6 花如月 的帖子
花大哥,从中午弄到了现在还是不会,你还是指点一下吧,怎么修改?
回复 #7 aiguo 的帖子
再加一条指令:set(AX(:),'Ycolor',)
回复 #7 aiguo 的帖子
小弟试过了,怎么不行呢,同时还请教一下花哥,两边纵轴粗细的改变?多谢了!
[ 本帖最后由 eight 于 2007-11-23 16:40 编辑 ] 原帖由 aiguo 于 2007-11-23 16:39 发表 http://www.chinavib.com/forum/images/common/back.gif
小弟试过了,怎么不行呢,同时还请教一下花哥,两边纵轴粗细的改变?
多谢了!
建议自己多看看 matlab 帮助,多看看本版的置顶贴,然后动手试试,不要一味指望别人帮你解决一个又一个问题
回复 #9 aiguo 的帖子
思路就是修改AX相应的属性,具体方法就是用set和get我告诉你的方法是可行的,如果有问题可能是你版本低。把那条指令一分为2就可以了,要之多尝试。写那条指令的时候我也不知道用那种用法,写了后才知道:lol 所以要不怕出错,多尝试
-------------------------------------------
>> set(AX(:),'Ycolor',)
>>
[ 本帖最后由 花如月 于 2007-11-23 16:57 编辑 ]
双y坐标实例
close all hiddenclear all
clc
% w=boxcar(nfft);
fni1=input('请输入时间序列文件: ','s');
fid1=fopen(fni1,'r');
s=fscanf(fid1,'%s',1);
if same(s,'Curve')
for i=1:61
tline=fgetl(fid1);
end
else
fid1=fopen(fni1,'r');
end
a1=fscanf(fid1,'%f');
status=fclose(fid1);
n=length(a1);
n2=n/2;
a2=reshape(a1,2,n2);
x1=a2(1,:);
y1=a2(2,:);
fni2=input('输入速度曲线文件','s');
fid2=fopen(fni2,'r');
b=fscanf(fid2,'%f');
n3=length(b);
n4=n3/2;
b2=reshape(b,2,n4);
x2=b2(1,:);
y2=b2(2,:);
p=polyfit(x2,y2,3);
y3=polyval(p,x2);
% plot(x2,y2)
=plotyy(x1,y1,x2,y3);
grid on;
xlabel('时间/s');
set(get(AX(1),'Ylabel'),'string','加速度/g');
set(get(AX(2),'Ylabel'),'string','速度km/h');
set(AX(1),'yTick',[-2:0.5:2]);
% % axes1 = axes('Position',,'Parent',figure1);
% axis(axes1,);
% set(AX(2),'YTick',);
yticks2 = linspace(300,360,9);
set(AX(2),'YLim',,'YTick',yticks2);
set(H2,'linewidth',3); 额,坐标范围还是木有学会啊。 顶,学习,集腋成裘,聚沙成塔{:{26}:} 在这里总能找到我想学习的,顶啊顶{:{39}:}{:{39}:}
页:
[1]
2