python画球面_matplotlib中的球面坐标图

unutbu..

8

下面的代码非常类似于Matplotlib画廊的3D极坐标图.唯一的区别是你np.meshgrid用来制作2D数组PHI而THETA 不是R和THETA(或者3D极图的示例调用P).

这个故事的寓意是,只要X,Y和Z可以表示为两个参数(平滑)功能,plot_surface可绘制.

import numpy as np

import matplotlib.pyplot as plt

import mpl_toolkits.mplot3d.axes3d as axes3d

theta, phi = np.linspace(0, 2 * np.pi, 40), np.linspace(0, np.pi, 40)

THETA, PHI = np.meshgrid(theta, phi)

R = np.cos(PHI**2)

X = R * np.sin(PHI) * np.cos(THETA)

Y = R * np.sin(PHI) * np.sin(THETA)

Z = R * np.cos(PHI)

fig = plt.figure()

ax = fig.add_subplot(1,1,1, projection='3d')

plot = ax.plot_surface(

X, Y, Z, rstride=1, cstride=1, cmap=plt.get_cmap('jet'),

linewidth=0, antialiased=False, alpha=0.5)

plt.show()

产量

</

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值