Matlab 绘制区域动态线图
在matlab中,可以为打印在绘图上的两行之间的区域着色。 下面的代码打印动态绘图Matlab 绘制区域动态线图,matlab,plot,Matlab,Plot,在matlab中,可以为打印在绘图上的两行之间的区域着色。 下面的代码打印动态绘图 figure('doublebuffer','on') t=0; r=32; g=32 axes('xlim',[0 24], ... 'nextplot','add') p1=plot(t,r,'r','LineWidth',2); p2=plot(t,r,'b.','MarkerSize',15); p3=plot(t,g,'b','LineWidth',2); p4=plot(t,g,'g.','
figure('doublebuffer','on')
t=0;
r=32;
g=32
axes('xlim',[0 24], ...
'nextplot','add')
p1=plot(t,r,'r','LineWidth',2);
p2=plot(t,r,'b.','MarkerSize',15);
p3=plot(t,g,'b','LineWidth',2);
p4=plot(t,g,'g.','MarkerSize',15);
for t=1:24
ylim('auto')
r=abs(22*(rand(1,1)+1));
g=abs(8*(rand(1,1)+1))
set(p1,'xdata',[get(p1,'xdata') t],...
'ydata',[get(p1,'ydata') r])
set(p2,'xdata',t,...
'ydata',r)
set(p3,'xdata',[get(p3,'xdata') t],...
'ydata',[get(p3,'ydata') g])
set(p4,'xdata',t,...
'ydata',g)
pause(0.5)
end
我想知道的是,你是否可以给这两条直线之间的区域涂上颜色,这两条直线是平面图(现在是白色,但我想知道你是否可以改变一个区域的颜色)
我会放一个样本,但我有足够的分数。另外,我想知道当有很大的变化时,你是否可以消除图表中的尖峰
提前谢谢你的帮助。我希望我解释得很清楚。我尝试使用命令area(),但没有成功….关于在两行之间填充颜色,您可以使用该函数。下面是对示例的修改,说明了如何执行此操作:
t = 0:24; %# t values
r = [32 zeros(1,24)]; %# Initialize r values
g = [32 zeros(1,24)]; %# Initialize g values
hFill = fill([t(1) t(1)],[r(1) g(1)],'r'); %# Fill between r and g with red
for iPoint = 2:length(t)
r(iPoint) = 22*(rand+1); %# Add a value to r
g(iPoint) = 8*(rand+1); %# Add a value to g
set(hFill,'XData',[t(1:iPoint) t(iPoint:-1:1)],... %# Update x data
'YData',[r(1:iPoint) g(iPoint:-1:1)]); %# Update y data
pause(0.5);
end
然后,您可以添加轨迹引导点的绘图。关于在两条直线之间填充颜色,您可以使用该功能。下面是对示例的修改,说明了如何执行此操作:
t = 0:24; %# t values
r = [32 zeros(1,24)]; %# Initialize r values
g = [32 zeros(1,24)]; %# Initialize g values
hFill = fill([t(1) t(1)],[r(1) g(1)],'r'); %# Fill between r and g with red
for iPoint = 2:length(t)
r(iPoint) = 22*(rand+1); %# Add a value to r
g(iPoint) = 8*(rand+1); %# Add a value to g
set(hFill,'XData',[t(1:iPoint) t(iPoint:-1:1)],... %# Update x data
'YData',[r(1:iPoint) g(iPoint:-1:1)]); %# Update y data
pause(0.5);
end
然后,您可以添加轨迹的引导点的绘图。非常感谢,我看到了命令fill,但我无法使其在循环中有效。我们非常感谢您的帮助非常感谢,我看到了命令填充,但我无法使其在循环中有效。我们非常感谢你的帮助