擅长:python、mysql、java
<p>你所拥有的</p>
<p><em>x</em>和<em>y</em>在第一象限。你只需将x和y坐标乘以-1,就可以将这个四分之一圆反映到其他象限中,得到这些值。你知道吗</p>
<p>但最好的方法是使用极坐标</p>
<p><strong><em>你能做什么</em></strong></p>
<p>考虑一下这个(对不起,我没有numpy)</p>
<pre><code>import random
import math
r = 5
yc = []
xc = range(0,6)
for x in xc:
yc.append(int(math.sqrt(r**2 - x**2)))
print yc
def neg_one(a):
return -a
z1 = zip(xc,yc)
z2 = zip(xc, map(neg_one, yc))
z3 = zip(map(neg_one, xc), map(neg_one, yc))
z4 = zip(map(neg_one, xc), yc)
print z1
print z2
print z3
print z4
</code></pre>
<p>这可能是你想要的4倍。所以要解决这个问题</p>
<pre><code>z_f = z1 + z2 + z3 + z4
print z_f
desired_value_points = 10
chunk_size = len(z_f) / desired_value_points
print "Chunk size: " + str(chunk_size)
print z_f[::chunk_size]
</code></pre>
<p>将生成分布在圆上的所需点数</p>