Is there a way to get Matplotlib to render accented chars (é,ã,â,etc)?
For instance, I'm trying to use accented characters on set_yticklabels()
and Matplotlib renders squares instead, and when I use unicode()
it renders the wrong characters.
Is there a way to make this work?
It turns out you can use u"éã", but first you have to set the file encoding:
# Using the magic encoding # -*- coding: utf-8 -*-
After that Matplotlib correctly renders
u"é"
I also learned that you can use
import matplotlib.font_manager as fm fp1=fm.FontProperties(fname="/path/to/somefont.ttf") ax.title("é",fontproperties=fp1)
in case you need to render a characters that Matplotlib does not have.
The general formula to calculate the tilde operation ~i is ~i=-i-1 .
You can use a subset of TeX markup in any Matplotlib text string by placing it inside a pair of dollar signs ($). Note that you do not need to have TeX installed, since Matplotlib ships its own TeX expression parser, layout engine, and fonts.
Prefix the strings with u
to tell Python that they are Unicode strings:
ax.set_yticklabels([u'é', u'ã', u'â'])
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With