Change Matplotlib's default font
This will not change your font permanently, but it's worth a try.
matplotlib.rc('font', family='sans-serif') matplotlib.rc('font', serif='Helvetica Neue') matplotlib.rc('text', usetex='false') matplotlib.rcParams.update({'font.size': 22})
Ubuntu 14.04 LTS
Upload the fonts
sudo cp NotoSansKR-Regular.otf /usr/share/fonts/
Update the cache of font
sudo fc-cache -fv
You can check the font list
fc-list
Restart ipython, etc.Check the font list
[f.name for f in matplotlib.font_manager.fontManager.ttflist]
Take a your font name
import matplotlib.pyplot as pltfrom matplotlib import rcParamsrcParams['font.family'] = 'Noto Sans Korean'
Draw
plt.title(u'한글 제목')plt.xlabel(u'한글 축 이름')plt.plot(range(5))
Kim already introduced dynamic solution works perfectly, and here's two other ways doing the same in static.
First, you may put a line to rc file for matplotlib . Refer to this page for more information about locating the file and detailed settings.
font.family : NanumGothic
Second, if you are working with ipython, you can put some commands for font setting to a configuration file for the interactive shell. Find the file named ipython_config.py which usually located under ~/.ipython/somewhere. Then add two more lines to the list, c.InteractiveShellApp.exec_lines .
c.InteractiveShellApp.exec_lines = [ "import matplotlib as mpl", "mpl.rcParams['font.family'] = 'NanumGothic'"]
Former always works whatever environment you run your shell script on as it loads the font when your script imports matplotlib .