Я не уверен, почему, но ваш код работает на моем ноутбуке с matplotlib 3.1.0. Может быть, вы могли бы подумать о переустановке matplotlib.
import matplotlib.pyplot as plt
mae, mse = 1, 1
plt.plot() # in your case : plt.plot(test_index, y_pred,color="goldenrod")
plt.text(.5, .5, 'MAE:{}\nMSE:{}'.format(mae, mse))
plt.tight_layout()
plt.show(block=False)
plt.show()
Относительно редактирования:
создание подобных объектов Line2D не будет ничего связывать с фактическим сюжетом. Вы можете либо напрямую использовать
plt.plot(test_index, y_pred,color="goldenrod")
plt.plot(test_index, y_test, color="dodgerblue")
plt.show()
или
fig, ax = plt.subplots()
line1 = Line2D(test_index, y_pred,color="goldenrod")
line2 = Line2D(test_index, y_test, color="dodgerblue")
ax.add_line(line1)
ax.add_line(line2)
plt.show()
Добавление текста с помощью AnchoredText Внешняя рамка
from matplotlib.offsetbox import AnchoredText
at = AnchoredText("My Text",
loc='lower left', frameon=True,
bbox_to_anchor=(0., 1.),
bbox_transform=ax.transAxes # or plt.gca().transAxes
)
plt.gca().add_artist(at)
играть с bbox_to_anchor
для позиции.