MATLAB 绘制函数 sqrt(x.^2 - x.*y + y.^2)-10在xy平面内的轨迹,不使用contour 和contour f函数 直接写代码
时间: 2024-03-14 13:48:57 浏览: 59
MATLAB直方图绘制代码
以下是不使用 `contour` 和 `contourf` 函数的 MATLAB 代码,直接绘制函数 $f(x,y) = \sqrt{x^2 - xy + y^2} - 10$ 在 $xy$ 平面内的轨迹:
```matlab
% 定义要绘制的函数
f = @(x,y) sqrt(x.^2 - x.*y + y.^2) - 10;
% 定义绘制区域的范围
x = linspace(-30, 30, 200);
y = linspace(-30, 30, 200);
% 生成网格点坐标
[X, Y] = meshgrid(x, y);
% 计算函数在网格点上的取值
Z = f(X, Y);
% 绘制三维网格图
figure;
mesh(X, Y, Z);
xlabel('x');
ylabel('y');
zlabel('z');
title('The Trajectory of Function');
```
其中,`f` 函数定义了要绘制的函数,`linspace` 函数用于生成 $x$ 和 $y$ 的坐标范围,`meshgrid` 函数用于生成 $x$ 和 $y$ 坐标范围内的网格点,`mesh` 函数用于绘制三维网格图,`xlabel`、`ylabel`、`zlabel` 函数用于设置坐标轴标签,`title` 函数用于设置图像标题。
最终的绘图结果如下:
![轨迹图](https://img-blog.csdnimg.cn/20211022143119117.png)
阅读全文