Reputation: 2621
I plot a figure as below:
plt.plot(lon,lat,'ro-')
plt.show()
but the lines aren't closed. How can I make them closed as polygons? thank you
Upvotes: 7
Views: 6429
Reputation: 2299
A helper method I use:
def plotPolygonOutline(points: List[Tuple[float, float]], color='r', lineWidth=1):
x, y = map(list, zip(*points))
x.append(x[0])
y.append(y[0])
plt.plot(x, y, marker='o', color=color, linewidth=lineWidth)
Upvotes: 1
Reputation: 5383
Use matplotlib.pyplot.fill(lon,lat,fill=False)
instead of plot()
.
See http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.fill for details. The color string refers to the interior, so to use red for the polygon, use
plt.fill(lon, lat, edgecolor='r', fill=False)
and continue to use plot()
to place circles on the vertices if desired.
Upvotes: 17