2013-07-13 56 views

回答

2

您可以在极次要情节使用ax.add_line():

import matplotlib 
import matplotlib.pyplot as plt 
import numpy as np 

r = np.ones(100) 
theta = np.linspace(0,2*np.pi,100) 
polygon = matplotlib.patches.Polygon(zip(theta,r),fill=False) 

fig = plt.figure() 
polar = fig.add_subplot(111,projection='polar') 
polar.add_line(polygon) 
polar.autoscale() 

plt.show() 

另一种方法是使用ax.fill()与多边形的点。

相反的:

polar.add_line() 

你可以使用:

polar.fill(theta,r,fill=False) 

,你会得到相同的结果,而不:

polygon = matplotlib.patches.Polygon(zip(theta,r),fill=False) 

enter image description here

+0

太好了。这样可行! – siva82kb