Travel Tips
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Matplotlib不能显示中文和正负号的问题WindowsUserWarning: findfont: Font family ['sans-serif', 'SimHei'] not found.
1.下载相应的中文字体链接:https://pan.baidu.com/s/1Jb4-qWXPd-iDP4VnaIYhDQ 密码:ppse
这个网盘链接里面有整理好的许多字体样式,可以根据需求进行下载,选择要使用的字体样式
##### 1.1这时在画图的程序中加入下面两行代码在画的图中就可以显示中文了,代码中要改为自己的路径名称,后面跟要使用的字体样式。
一般中文可以使用下载的文件下的 /font-master/unicode 的下面的SimHei.ttf
``` from matplotlib.font_manager import FontProperties font = FontProperties(fname=r"自己的路径名字/SimHei.ttf", size=15) ```
- 不过这种方法比较麻烦每次都要寻找添加路径名
- 可以试一下方法二一劳永逸
1.首先下载字体
2.查找自己的电脑中matplitlib的配置文件
``` import matplotlib print(matplotlib.matplotlib_fname()) ```
在IDLE中运行代码找出自己matplitlib的配置文件的路径
3.把要使用的字体文件(比如SimHei.ttf字体)放入/site-packages/matplotlib/mpl-data/fonts/ttf下面
4.这时运行程序之后图中还不能显示中文是因为matplotlib还存在缓存,清除缓存后就能够正常运行了。
- (1) 在Linux下:删除文件夹~/.cache/matplotlib/(~/.cache/matplotlib/fontList.json文件没有保存新安装的字体)。如果不存在上述文件夹,则删除 ~/.cache/ipython(?本次运行成功)
- (2)在Windows下:删除C:\Users\dongfang\.matplotlib文件夹
#### 5.之后只要在要使用中文的图例中写入下面一句就可以完美的解决中文乱码问题了
``` # 用来正常显示中文标签,SimHei是字体名称,字体必须再系统中存在,字体的查看方式和安装第三部分 plt.rcParams['font.sans-serif']=['SimHei'] ```
5.之后再运行程序就可以显示中文了
Sed ac lorem felis. Ut in odio lorem. Quisque magna dui, maximus ut commodo sed, vestibulum ac nibh. Aenean a tortor in sem tempus auctor
December 4, 2020 at 3:12 pm
Sed ac lorem felis. Ut in odio lorem. Quisque magna dui, maximus ut commodo sed, vestibulum ac nibh. Aenean a tortor in sem tempus auctor
December 4, 2020 at 3:12 pm
Donec in ullamcorper quam. Aenean vel nibh eu magna gravida fermentum. Praesent eget nisi pulvinar, sollicitudin eros vitae, tristique odio.
December 4, 2020 at 3:12 pm
我是 s enim interduante quis metus. Duis porta ornare nulla ut bibendum
Rosie
6 minutes ago