我的任务是在一个不可见的圆的同心环上生成均匀(或多或少)间隔的点。该函数应将半径列表和要为给定半径绘制的点数作为参数。例如,半径为0时,应在(0,0)处绘制1点。对于半径为1的圆,它应该沿着圆的圆周绘制10个点,以2pi/10的角度隔开。对于半径为2的圆,沿圆周20点,以2pi/20的角度隔开。
发电机应采用以下参数:
n,rúmax,m
应该在半径处生成坐标对环
对于i=0,1,…,n,r_i=i*r_max/n
每个环的n*i点应均匀分布在θ内,其中 n_i=1表示i=0;n_i=mi表示i>;0
当这样调用函数时:
for r, t in genpolar.rtuniform(n=10, rmax=0.1, m=6):
plot(r * cos(t), r * sin(t), 'bo')
以下是我到目前为止的研究成果:
def rtpairs(R, N):
R=[0.0,0.1,0.2]
N=[1,10,20]
r=[]
t=[]
for i in N:
theta=2*np.pi/i
t.append(theta)
for j in R:
j=j
r.append(j)
plt.plot(r*np.cos(t),r*np.sin(t), 'bo')
plt.show()
但是我很确定有一个更有效的方法使用两个for循环。
非常感谢
我想出来了。代码如下:
我不知道python,但这个公式应该有用。
整数环数=0
int n=铃声-1
((n/n+1)*60)-60=点之间的度数(零点环除外,该点为中心
这是一种方法。
当您在适当的列表中传递此函数时,一个具有每个圆的半径,另一个具有所需点数,它将返回一个坐标数组列表,每个圆一个。
这些可以绘制如下。
在这里我们可以看到更多圆的结果。
相关问题 更多 >
编程相关推荐