You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将球体平移至3D高斯分布图形上方?

解决方法:平移球体的Z坐标到高斯分布顶部

嘿,这个问题其实很好解决,核心就是调整球体的z轴位置,让它刚好落在高斯分布的峰值上~

首先我们先理清楚关键数值:

  • 你的高斯分布在原点(0,0)处的峰值高度是1(因为当X=0、Y=0时,exp(0)=1)
  • 缩放后的球体半径是s(你代码里用x1 = x1*s等操作把球体半径改成了s),原来的球体是围绕原点(0,0,0)生成的,z轴范围是[-s, s]

要让球体完美叠加在高斯顶部,你只需要给球体的所有z坐标加上一个偏移量,让球体的底部刚好和高斯的峰值对齐。修改后的完整代码如下:

% 绘制高斯分布
n = 100; % 分辨率
s = 2; % 宽度
x = linspace(-5,5,n);
[X,Y] = meshgrid(x);
gaus2d = exp( -(X.^2 + Y.^2 )/(2*s^2));
figure(1), clf
surf(x,x,gaus2d)
hold on  % 先开启hold on,确保两个图形在同一个窗口

% 绘制并平移球体到高斯顶部
rotate3d on
[x1,y1,z1] = sphere;
% 调整球体半径
x1 = x1*s;
y1 = y1*s;
z1 = z1*s;
% 关键:平移z坐标,让球体底部刚好落在高斯峰值上
z1 = z1 + 1 + s;  
surf(x1,y1,z1)
hold off

关键细节解释:

  • 代码里的z1 = z1 + 1 + s是核心操作:缩放后的球体z范围原本是[-s, s],加上1+s后,新的z范围变成[1, 1+2s],这样球体的最低点刚好对应高斯的最高点(0,0,1),完全贴合在顶部。
  • 如果你想要球体的中心刚好在高斯顶部(允许球体下半部分嵌入高斯),只需要把偏移量改成1,也就是z1 = z1 + 1,这样球体中心在(0,0,1),z范围是[1-s, 1+s]。

内容的提问来源于stack exchange,提问作者Hemfri

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.08 19:47:56