一直被这个问题困扰,今天在网上找的总结。
matplotlib支持中文编码,只是matplotlib库的配置信息里没有中文字体的相关信息。
显示中文字体的方法有三种:
1、修改配置文件
lib\site-packages\matplotlib\mpl-data\matplotlibc
font.family:想要设置的字体
font.sans-serif:加上想要设置的字体
前面的#去掉
2、动态设置参数
import matplotlib
matplotlib.rcParams['font.sans-serif']=['SimHei']
不出现负号,找到方法1中的配置文件,将配置文件中的axes.unicode minus:True改为False也可以在代码中用matplotlib.rcParam['aces.unicode_minus']=False来设置
3、使用字体管理器font_manager
font=matplotlib.font_manager.FontProperties(fname='C:\\WINDOWS\\fonts\\simsun.ttc')
matplotlib.rcParam['aces.unicode_minus']=False来设置
用的时候只需将可以设置fontpeoperties的属性设置为font即可
fname的值是系统中你想设置字体的路径,查看字体的名称,右键-属性。