Using unicode text and axes labels

I need to make plots in which the axes and text labels display in
either English, Spanish, or Portuguese.

I have code that successfully adds the labels in English but when
using Spanish or Portuguese characters the labels show up mangled.

I then switched to trying to get the example to work. Adding a:

# -*- coding: utf-8 -*-

to the top of the file and replacing the English text. Again with no success.

Has anyone had success in using matplotlib with unicode and
specifically the utf-8 encoding?

I am using the system in non-interactive mode with the Agg backend if
that could make a difference.

Any help is very appreciated!