EDA365电子论坛网

标题: 在用plot绘图的时候,提示错误,请大神指导 [打印本页]

作者: littlestupid    时间: 2020-7-7 15:57
标题: 在用plot绘图的时候,提示错误,请大神指导
错误提示:错误使用 plot,数据必须为可转换为双精度值的数值、日期时间、持续时间或数组。0 U3 F/ W. @+ ]: T
第一次遇到这种情况,请问怎么解决呢?
% z3 N* V0 A6 m# h代码如下:
% A( {2 H' @2 Q' R; `2 Rsyms X2;
0 j+ }& Y; @( D# w7 X) w7 ysyms x2;
; D* J! e( x& d6 a) Z" ap21 =-0.0004904;p22 =-0.004891;p23 =-0.02402;p24 =0.01972;p25 =0.2382;
9 ^0 X6 M( W% b0 Z4 KY2= p21*(X2).^4 + p22*(X2).^3 + p23*(X2).^2 + p24*(X2)+ p25;
; v6 i  D. X. FX2=vpasolve(Y2,X2,[-4;4]);%确定X2的零点
  G( J: ~$ x8 W6 EX2(1);X2(2);
8 n% A+ a' P# D! }: H' lY2=(p21*(x2).^4 + p22*(x2).^3 + p23*(x2).^2 + p24*(x2)+ p25).*(x2>=X2(1)&x2<=X2(2))+0.1*(x2>X2(2));%分段函数
( l) h" T: u8 z, p8 c) Eplot(x2,Y2)
% I) [3 V$ d: w1 Z
作者: CCxiaom    时间: 2020-7-7 17:07
顶一波~~~
作者: uqHZau    时间: 2020-7-7 19:12
建议再回去看看自己写的代码,x2是个符号变量,没有具体数值,怎么用来指定横纵坐标并绘制曲线?7 \! c: N+ S% T/ ]

0 Z( L5 o5 [8 Y4 R写代码的时候,请尽量避免同时使用X2, x2这种不容易分得清的变量命名,符号变量写成X,求解出来的数值变量命名成Sol_X之类,既容易区分也便于纠错。
作者: littlestupid    时间: 2020-7-7 19:13
uqHZau 发表于 2020-7-7 19:122 Q! j- O% R: ^# u! h7 y
建议再回去看看自己写的代码,x2是个符号变量,没有具体数值,怎么用来指定横纵坐标并绘制曲线?* m4 j2 o# b/ I% g4 p; Y- E

/ t$ l) ]9 c2 [9 h写代码 ...

9 E8 o3 {" c+ g% a这里我知道x(x2)被定义成了符号变量,可是我尝试了,给它个取值范围结果也一样,但又必须定义x,而且应该是在分段函数Y这一行出了问题,所以不知道该怎么解决。
* }) `; Y5 v% M; {我把代码重新修改一下:/ W; X% I2 R1 A& @0 P. b6 T4 g
syms X;
7 k+ h9 @2 c( Jx=-5:0.1:3;9 H, x: w! t: r/ R8 Z
p21 =-0.0004904;p22 =-0.004891;p23 =-0.02402;p24 =0.01972;p25 =0.2382;
# U( Z+ a3 T9 Z& F3 kY= p21*(X).^4 + p22*(X).^3 + p23*(X).^2 + p24*(X)+ p25;
2 P- n0 q' F* m0 HSol_X=vpasolve(Y,X,[-4;4]);%确定X2的零点
7 g$ A$ e2 }: ^* v2 g% _Sol_X(1);Sol_X(2);
( }2 b9 W3 J+ DY=(p21*(x).^4 + p22*(x).^3 + p23*(x).^2 + p24*(x)+ p25).*(x>=Sol_X(1)&x<=Sol_X(2))+0.1*(x>Sol_X(2));%分段函数
; I( B. T- a0 Y! ]plot(x,Y)# z. x% o0 |9 }

作者: littlestupid    时间: 2020-7-7 19:15
已解决,谢谢




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2