KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
Reading the following article, I managed to put a legend outside plot. How to put the legend out of the plot code: import matplotlib.pyplot as pyplot x = [0, 1, 2, 3, 4] y = [xx*xx for xx in x] fig = pyplot.figure() ax = fig.add_subplot(111) box = ax.get_position() ax.set_position([box.x0, box.y0, box.width*0.8, box.height]) ax.plot(x, y) leg = ax.legend(['abc'], loc = 'center left', bbox_to_anchor = (1.0, 0.5)) #pyplot.show() fig.savefig('aaa.png', bbox_inches='tight') pyplot.show() displays the correct plot with a legend outside it. But when I save it as a file with fig.savefig() , the legend is truncated. Some googling shows me workarounds such as adding bbox_extra_artists=[leg.legendPatch] or bbox_extra_artists=[leg] to savefig() , but neither worked. What is the correct way to do it? Matplotlib version is 0.99.3. Thanks.
Tags (comma-separated)
Save Edits
Cancel