matlab绘图的疑问

学习 时间:2026-04-04 17:47:12 阅读:9451
matlab绘图的疑问我写的代码是:x=ones(1,100); y=ones(1,100); for i=0:0.01:10 for j=1:100 x(1,j)=i; y(1,j)=8.314*((x(1,j)/cosh(x(1,j)))^2);endendplot(x,y)为什么图上根本就么有点和线呢?

最佳回答

知性的羊

难过的柚子

2026-04-04 17:47:12

是想要这样的结果么(图在最后面):
x=0:。01:10;
y=8。314*(x。/cosh(x))。^2;
plot(x,y)
就可以了。
你的循环使x,y数组的值变了1001遍(i=0:0。01:10),最后x,y的值停留在i=10的时候,即整个循环最后结果是x中100个元素的值全为10,y中100个元素的值全为8。314*(10/cosh(10))^2。这样plot(x,y)出来的结果只有1个点。
matlab对数组矩阵处理能力强,能用矩阵运算的地方尽量不要用循环去解决,这样节约精力也减少程序运行时间。

最新回答共有2条回答

  • 受伤的棉花糖
    回复
    2026-04-04 17:47:12

    是想要这样的结果么(图在最后面):x=0:。01:10;y=8。314*(x。/cosh(x))。^2;plot(x,y)就可以了。你的循环使x,y数组的值变了1001遍(i=0:0。01:10),最后x,y的值停留在i=10的时候,即整个循环最后结果是x中100个元素的值全为10,y中100个元素的值全为8。314*(10/cosh(10))^2。这样plot(x,y)出来的结果只有1个点。matlab对数组矩阵处理能力强,能用矩阵运算的地方尽量不要用循环去解决,这样节约精力也减少程序运行时间。

上一篇 氢氧化钡和盐酸、硫酸反应现象

下一篇 橱柜门板什么材质好