用matlab实现这个绘图,程序是什么?

用matlab实现这个绘图,程序是什么?,第1张

从图像可知,这两条曲线分别是sin(x),cos(x)。实现这两笑改条曲线的绘制可以这样编写其代码:

x=0:pi/10:4*pi  %生成x向量组,其范围从0到4π,步长为pi/10

y1=sin(x)  %计算正弦函数

y2=cos(x) %计算余弦函数值

plot(x,y1,'--',x,y2,'-')   %绘制正弦函数和余弦函数曲线图

legend("sin(x)","cos(x)")  %图例标碰含判注老键

xlabel('时间')ylabel('幅值')%标注坐标轴名称

执行代码和运行结果

大致步骤是你在matlab上面写好程序,然后matlab上面生成一个dll

给个参考网址:

http://www.jb51.net/article/41034.htm

(选择对应c#的版本,好像是选择.net,不要选择其他的,其他生成的是对应c++,c vb之类的)

生成完之后C#引用具体代码也可以网上找找

注意一旁亮点就是:

注意你电脑安装的.net版本能否旁芦被matlab所识别,(如果matlab版本比较旧,选择.net 版本也不能在之后运启宽的)

以前本来想写个拟合曲线的,结果版本问题生成不了,最后直接在C#写的代码

matlab 积分图像可以来腊早实现。其方法利用for循环语句求解每一个(d,y)的对应值,然后用plot绘出其积分图像。

d0=0:0.1:3.1

n=length(d0)

for i=1:n

d=d0(i)

R=0.3*d+1

syms x

eq=2*x/R^2.*exp(-x.^2/R^2).*acos((x.^2+0.1)./(2*x))%eq=@(x)2*x/R^2.*exp(-x.^2/R^2).*acos((x.^2+0.1)./(2*x))

y(i)=int(eq,0.1,R)%y(i)=integral(eq,0.1,R,'RelTol',1e-8,'AbsTol',1e-13)

end

plot(d0,y)

xlabel('d'),ylabel('y')grid on

运行结果

注:当d0>3.1时罩基,y为复数值。请题主检查一下积分物局谨方程是否有错。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12534275.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2025-08-26
下一篇2025-08-26

发表评论

登录后才能评论

评论列表(0条)

    保存