yyhwly 2022-04-10 10:36 采纳率: 100%
浏览 37
已结题

matlab里绘制曲线图为什么一直出现y=x这样的直线

x = -0.5:0.01:0.5;
a = 0.8;
c = sqrt(4a.^2-1)/3;
y = -x
sqrt(4a.^2-1)(c-sqrt(4a.^2-1))/c/sqrt(4a.^2-1-x.^2)+x*(1-sqrt(4*a.^2-1)/c);
figure %建立一个幕布
plot(x,y)

不清楚是不是代码有问题,求解答

img

  • 写回答

3条回答 默认 最新

  • 技术专家团-Joel 2022-04-10 13:54
    关注

    你好,因为x是数组,matlab里面两个数组对应位置相乘相除或者取多少次方,需要用.*./.^表示呢
    所以给你更正:

    x = -0.5:0.01:0.5;
    a = 0.8;
    c = sqrt(4*a.^2-1)/3;
    y = -x.*sqrt(4*a.^2-1).*(c-sqrt(4*a.^2-1))/c./sqrt(4*a.^2-1-x.^2)+x*(1-sqrt(4*a.^2-1)/c);
    figure %建立一个幕布
    plot(x,y)
    

    img

    有帮助望采纳哟,谢谢啦

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月18日
  • 已采纳回答 4月10日
  • 创建了问题 4月10日