Windows下使用matplotlib画图中文无法显示的问题

报错情况

使用 jupyter notebook 画图的时候,坐标轴的刻度使用了中文,结果画图结果无法显示中文。

解决方案

  • 首先,因为 matplotlib 是外国人开发的,所以使用的字体并不支持中文,所以我们要修改matplotlib 的配置文件,使他使用支持中文的字体。

  • 下载一个支持中文字体的字体,我用的 SimHei 。可以直接从网上下载压缩包。随便下载到一个便于我们找到的路径下,下载好之后解压,双击直接安装,它会自动帮你安装到 “C:\Windows\Fonts”这个路径下的,这个路径就是我们系统所有字体的安装路径。或者你可以直接将解压后的文件转帖到Fonts文件夹里面,也就相当于安装好了。

  • 之后修改matplotlib的配置文件,或许你并不知道matplotlib的配置文件在哪里,这个时候你就需要使用cmd了,或者是anaconda带的prompt,两者都可以:
    Windows下使用matplotlib画图中文无法显示的问题_第1张图片
    根据提供的路径,找到并打开matplotlibrc 文件,找到font_family的信息:
    Windows下使用matplotlib画图中文无法显示的问题_第2张图片
    在这里,我们要去掉注释,并写入我们刚下载并安装好的字体:
    Windows下使用matplotlib画图中文无法显示的问题_第3张图片
    并在下方这两处位置添加Arial Unicode MS
    Windows下使用matplotlib画图中文无法显示的问题_第4张图片

  • 最后一步是清理matplotlib的缓存文件,至于为什么要清理缓存,大家应该都知道,程序运行的时候一般会先加载缓存里面编译好的文件,如果不清理,它一直使用的都会是原来的字体。
    打开目录:C:\Users\tzm.matplotlib 将里面的三个文件全部删除掉:
    Windows下使用matplotlib画图中文无法显示的问题_第5张图片

  • 这些都做完后,重新打开软件,运行代码,就会看到中文显示了:
    Windows下使用matplotlib画图中文无法显示的问题_第6张图片
    写作完毕!

你可能感兴趣的:(python,中文显示,matplotlib)