首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MATLAB中的椭圆绘制

MATLAB中的椭圆绘制
EN

Stack Overflow用户
提问于 2016-01-08 06:59:47
回答 1查看 671关注 0票数 1

对于椭圆的参数方程,它具有以下风格:

也可以写成矩阵形式

现在我想用MATLAB中的系数矩阵[a b c; d e f]来绘制它。

方法1plot

代码语言:javascript
复制
function drawEllipse1(mat)
    t = linspace(0,2*pi,101);
    vec = [sin(t); cos(t); ones(1,length(t))];

    %calculate the coordinates of ellipse
    ellipse = mat1*vec;
    ellipseX = ellipse(1,:);
    ellipseY = ellipse(2,:);
    plot(ellipseX,ellipseY)

end

方法2ezplot

代码语言:javascript
复制
function drawEllipse2(mat)
    syms t;
    ellipseExpr = mat*[sin(t); cos(t); 1];
    %pass a function handle
    ezplot(@(t)ellipseExpr(1),@(t)ellipseExpr(2),[0,2*pi])

end

但是,drawEllipse2()不能正常绘制椭圆吗?我不知道为什么。

代码语言:javascript
复制
mat = [1 2 3;4 5 6];
drawEllipse2(mat)

EN

回答 1

Stack Overflow用户

发布于 2016-01-08 07:55:42

我不完全确定,但我认为这是因为您是如何传递函数句柄的。如果你简单地做:

代码语言:javascript
复制
ezplot(ellipseExpr(1),ellipseExpr(2),[0,2*pi])

你得到了同样的椭圆。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34671200

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档