我已经用python编写了一个程序来为一个项目映射光盘上点的随机位置。其思想是,对于不同数量的点,随机位置将被保存为png以供以后使用。代码如下:
def randr():#random r position
return random.random()
def randphi():#random phi position
return 2*pi*random.random()
nrange=[3,10,11,12,15,20,25,30]
for N in nrange:
rposition=[]#create a table of r positions
phiposition=[]#create a table of phi positions
rinverse=[]#create a table of 1/rij
for listcreation in range(0,N,1):#go through each charge
rposition.append(randr())#allocate a random r position
phiposition.append(randphi())#allocate a random phi position
name=N
filename = "c:/users/V/%i.png" % name
pyplot.polar(phiposition,rposition,marker='o', markersize=10,color='b',
linestyle='none')
pyplot.savefig(filename, format='png')
问题是,当这个代码运行时,第一个数字保存为3点,但是第二个数字保存为13点,而不是10点!这种情况持续了N个月
我不能发布图片,所以你必须相信我的话或运行代码。你知道吗
有人知道如何克服这个问题吗?你知道吗
我发现在类似的情况下,正确初始化一个
这将自动清除轴并清晰可读。如果您也使用
py.xlabel
,您可能希望将这些更改为ax.set_xlabel
,以使其更清楚。你知道吗默认情况下,轴不会在绘图之间清除,因此当您绘图第二个绘图时,它会添加到已绘图的内容中。要清除它,请在
polar
调用之前插入pyplot.cla()
。你知道吗相关问题 更多 >
编程相关推荐