matplotlib place legend code example

Example 1: matplotlib legend

import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 20, 1000)
y1 = np.sin(x)
y2 = np.cos(x)

plt.plot(x, y1, "-b", label="sine")
plt.plot(x, y2, "-r", label="cosine")
plt.legend(loc="upper left")
plt.ylim(-1.5, 2.0)
plt.show()

Example 2: python how to add a figure legend at the best position

# Short answer:
# matplotlib.pyplot places the legend in the "best" location by default
# To add a legend to your plot, call plt.legend()

# Example usage:
import matplotlib.pyplot as plt
x1 = [1, 2, 3] # Invent x and y data to be plotted
y1 = [4, 5, 6]
x2 = [1, 3, 5]
y2 = [6, 5, 4]

plt.plot(x1, y1, label="Dataset_1") # Use label="data_name" so that the 
									# legend is easy to interpret
plt.plot(x2, y2, label="Dataset_2")
plt.legend(loc='best')
plt.show()

# Other legend locations you can specify:
Location String		Location Code (e.g. loc=1)
'best'				0
'upper right'		1
'upper left'		2
'lower left'		3
'lower right'		4
'right'				5
'center left'		6
'center right'		7
'lower center'		8
'upper center'		9
'center'			10