编个matlab小程序绘图, 坐标轴6以外的图形画不出怎么解决?

functionr=yuan(a,b,c)%round.m,给定参数绘制圆%输入(a,b,c)分别为圆心横纵坐标,半径%输出(a,b)为圆心,c为半径的圆symsxyeq... function r=yuan(a,b,c)
%round.m,给定参数绘制圆
%输入(a,b,c)分别为圆心横纵坐标,半径
%输出(a,b)为圆心,c为半径的圆
syms x y eq;
eq=(x-a)^2+(y-b)^2==c^2;
r=ezplot(eq);
set(r,'linestyle','--','color','r','linewidth',2,'fill','on');
axis auto;
axis equal;
axis fill;
axis([a-c a+c+1 b-c b+c+1]);
end
下面是我用这个函数绘的两个圆,6以外就是显示不出,很奇怪啊!!!
展开
 我来答
我行我素850915
推荐于2016-04-22 · TA获得超过8241个赞
知道大有可为答主
回答量:5788
采纳率:77%
帮助的人:1732万
展开全部
这是因为用ezplot画图,默认的范围是[-2*pi,2*pi],当然画不出大于2*pi以外的图形,我改一下:
function r=yuan(a,b,c)
%yuan.m,给定参数绘制圆
%输入(a,b,c)分别为圆心横纵坐标,半径
%输出(a,b)为圆心,c为半径的圆
syms x y eq;
eq=(x-a)^2+(y-b)^2==c^2;
%r=ezplot(eq);
r=ezplot(eq,[(a-2*c) (a+2*c) (b-2*c) (b+2*c)]);
set(r,'linestyle','--','color','r','linewidth',2,'fill','on');
axis auto;
axis equal;
axis fill;
%axis([a-c a+c+1 b-c b+c+1]);
end
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式