我真的很喜欢编程……
但这是我的问题:
我不能发布图像,但我想要的图是一个“冠”(两个半径为a的同心圆)
我的意思是,在数学上讲这很容易定义,但我怎么能用python程序呢?
我想到了这样的事情:
def Fm1(X, Y):
r =r = sqrt(1.*X**2+1.*Y**2)
cos = 1.*X/r
sin = 1.*Y/r
teta = where( sin >= 0. , arccos(cos) , -arccos(cos) )
teta = where(r == 0. , 0., teta)
return r, teta
def F(r,teta):
X = r*cos(teta)
Y = r*sin(teta)
return X,Y
这些只是让你从笛卡儿传递到极坐标的函数,然后:
r=sy.linspace(a,b,N+1) # radius division
t=sy.linspace(0,2.*pi,2**NN) #angle (theta) division
R,T=meshgrid(r,t) #creating a mesh
X,Y = F(R,T)#transform from polar to cartesian
#Plotting :
fig=plt.figure()
ax=fig.add_subplot(111)
ax.plot(X, Y)
plt.show()
但结果是:同心多边