plt set legend outside code example
Example 1: matplotlib legend out of plot
ax.legend(loc='upper center', bbox_to_anchor=(0.5, 1.05),
ncol=3, fancybox=True, shadow=True)
Example 2: ax.legend place legend outside plot
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_axes((0.1,0.4,0.5,0.5))
ax.plot(x1,y1,linestyle='-',label='one')
ax.plot(x1,y2,linestyle='--',label='two')
ax.plot(x1,y3,linestyle='dotted',label='three')
ax.legend(bbox_to_anchor=(1.05,1.0),loc='best')
fig.savefig('Figure1.pdf')
Example 3: plt legend top right outside
import matplotlib.pyplot as plt
import numpy as np
x = np.arange(10)
fig = plt.figure()
ax = plt.subplot(111)
for i in xrange(5):
line, = ax.plot(x, i * x, label='$y = %ix$'%i)
ax.legend(loc='upper center', bbox_to_anchor=(0.5, 1.05),
ncol=3, fancybox=True, shadow=True)
plt.show()