[已答复] 如何画出这个图

[复制链接]
Forever234 发表于 2022-11-13 16:46:27
本帖最后由 Forever234 于 2022-11-13 16:57 编辑

如何根据这两个公式画出这个图,其中D和α等于1,有没有哪位大佬会画的


3

3

2

2

1

1

7 条回复


Forever234 发表于 2022-11-14 14:56:49
close all; clear all; clc
figure(1)
r=1;
azimuth=linspace(-0,2*pi);
elevation=linspace(-pi/2,pi/2);
[aa,ee]=meshgrid(azimuth,elevation);
a=abs(1-16.*asin(1/4.*((sin(sin(aa).*cos(ee)./2).^2)+(sin(sin(aa).*sin(ee)./2).^2)+(sin(cos(aa)/2).^2))));
x=r.*sin(aa).*cos(ee);
y=r.*sin(aa).*sin(ee);
z=r.*cos(aa);
mesh(x,y,z,a);
shading interp

我写的是这样的,图一直是个球

TouAkira 发表于 2022-11-17 10:55:40
Forever234 发表于 2022-11-14 02:56
close all; clear all; clc
figure(1)
r=1;

你的 x y z 都算得有问题,自己回去检查计算式吧。
618599_2.png

Forever234 发表于 2022-11-17 11:07:20
本帖最后由 Forever234 于 2022-11-17 14:02 编辑
TouAkira 发表于 2022-11-17 10:55
你的 x y z 都算得有问题,自己回去检查计算式吧。

我这个画出来了,就是坐标,颜色有误差,不知道能不能借鉴一下老师的代码
图片1.png

Forever234 发表于 2022-11-17 14:17:27
本帖最后由 Forever234 于 2022-11-17 14:59 编辑

就是我画的没有老师你画的准确

TouAkira 发表于 2022-11-18 10:53:57
Forever234 发表于 2022-11-16 23:07
我这个画出来了,就是坐标,颜色有误差,不知道能不能借鉴一下老师的代码
...

颜色是锦上添花的细枝末节,到 surf函数mesh函数 等绘图函数里自己改一下参数就行了。把数值先算对才是正经事。

Forever234 发表于 2022-11-20 20:16:28
本帖最后由 Forever234 于 2022-11-21 19:16 编辑
TouAkira 发表于 2022-11-18 10:53
颜色是锦上添花的细枝末节,到 surf函数 或 mesh函数 等绘图函数里自己改一下参数就行了。把数值先算对才 ...

老师那个画图怎么画成一种颜色

Forever234 发表于 2022-11-21 09:54:51
TouAkira 发表于 2022-11-18 10:53
颜色是锦上添花的细枝末节,到 surf函数 或 mesh函数 等绘图函数里自己改一下参数就行了。把数值先算对才 ...

还请老师指点一二
您需要登录后才可以回帖 登录 | 注册

本版积分规则

相关帖子
相关文章
热门教程
站长推荐
快速回复 返回顶部 返回列表