Python 3d玫瑰

import numpy as np
import matplotlib.pyplot as plt
from matplotlib import cm
# 创建figure窗口及axes坐标区域
fig = plt.figure()
ax = plt.axes(projection='3d')
# 构造玫瑰花曲面
x = np.linspace(0, 1, 200)
theta = np.linspace(-2*np.pi, 15*np.pi, 300)
[x,theta]=np.meshgrid(x, theta)
phi = (np.pi/2)*np.exp(-theta/8/np.pi)
X = 1-.5*pow(1.25*pow(1-np.mod(3.6*theta,2*np.pi)/np.pi, 2)-1/4, 2)
y = 1.95653*pow(x, 2)*pow(1.27689*x-1,2)*np.sin(phi)
r = X*(x*np.sin(phi)+y*np.cos(phi))
h = X*(x*np.cos(phi)-y*np.sin(phi))
# 设置颜色并绘制曲面
c = cm.get_cmap('magma')
surf = ax.plot_surface(r * np.cos(theta), r * np.sin(theta), h, rstride=1, cstride=1,
cmap= c, linewidth=0, antialiased=True)
# 减小空白区域并绘图
ax.set_position((0,0,1,1))
plt.show()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值