这个方程怎么用Matlab画出等高线图?

2025-02-28 07:17:19
推荐回答(3个)
回答1:

为何题主给出的用Matlab画出等高线图的代码出不来图?原因有三个:

首先,题主的主要思路是对的,用双重循环求和,但不能运行,其主要 的原因没有对x、y进行声明变量

其二,使用contourf(x,y,w)函数错误,因为该函数使用前 ,要求x,y,w数据必须为二维矩阵,所以该函数应增加一个网格数据化,即 [x,y]=meshgrid(0:10);

其三,重新计算w值,即 w=eval(w);

最后,修正代码并给出kb、xq、yp、q、D已知值后,运行代码可以得到如下等高线图形。

回答2:

首先生成网格数据:[x,y]=meshgrid(v1,v2)
然后画图咯:counour(X,Y,Z,30);30是等高线条数。
要想放到一张图上显示:counour(X,Y,Z,30);hold on;counour(X,Y,F,30);就OK了
想分开的话就:subplot(1,2,1):counour(X,Y,Z,30);subplot(1,2,2);counour(X,Y,Z,30)
有什么问题再联系吧~

回答3:

先这样……再那样……最后再……。就好了。