2010-05-10 103 views
1

这里是我使用的代码:我该如何让matlab图例符合图形的颜色?

x = linspace(0,2); 
e = exp(1); 
lin = e; 
quad = e-e.*x.*x/2; 
cub = e-e.*x.*x/2; 
quart = e-e.*x.*x/2+e.*x.*x.*x.*x/24; 
act = e.^cos(x); 
mplot = plot(x,act,x,lin,x,quad,x,cub,x,quart); 
legend('actual','linear','quadratic','cubic','quartic') 

这产生了传说正确的颜色匹配到实际的和线性的,在此之后,它似乎跳过红色在图表上,但不能在图例,即传说说二次曲线应该是红色的,但图形显示为绿色,图例说明立方体应该是绿色的,但图表显示为紫色等。

任何帮助表示赞赏。

回答

2

lin曲线需要修正---现在你只有一堆点而不是一条线。 quad和​​也需要修复(见下文)。

x = linspace(0,2); 
e = exp(1); 
lin = ones(size(x))*e; %#Now it's a vector with the same size as x 
quad = e-e.*x.*x/2; 
cub = e-e.*x.*x/2; 
quart = e-e.*x.*x/2+e.*x.*x.*x.*x/24; 
act = e.^cos(x); 
mplot = plot(x,act,x,lin,x,quad,x,cub,x,quart); 
legend('actual','linear','quadratic','cubic','quartic') 

quad和​​意思是一样的吗?也许它应该是:

quad = e-e.*x.*x/2; 
cub = e-e.*x.*x.*x/2; 
+0

谢谢,它现在有效 – 2010-05-10 18:50:51