使matplot显示支持中文和负号

输入下面的代码::

python 复制代码
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.set_title('这是一个测试标题')
ax.plot([-1, -2, -3], [4, 5, 6])
plt.show()

显示如下:

中文和负号都显示不出来。

解决方法:

python 复制代码
import matplotlib
print(matplotlib.matplotlib_fname())

比如印出的结果是:

python 复制代码
C:\Users\DY\.conda\envs\yolo\lib\site-packages\matplotlib\mpl-data\matplotlibrc

用文本编辑器打开这个文件:

查找到#font.family这一行:

去掉#号将其修改为font.family: SimHei

同样的方法,查找axes.unicode_minus:True将其修改为False:

再次运行测试代码:

正常显示。

Ubuntu系统可能没有雅黑字体,使用

python 复制代码
fc-list :lang=zh

列出所有支持中文的字体,然后在字体中选择一种,例如显示为:

python 复制代码
/usr/share/fonts/truetype/arphic/uming.ttc: AR PL UMing TW MBE:style=Light

将AR PL UMing TW MBE复制下来,设置:

python 复制代码
font.family:  AR PL UMing TW MBE

即可。

相关推荐
X56613 小时前
如何在 Laravel 中正确保存嵌套动态表单数据(主服务与子服务)
jvm·数据库·python
FQNmxDG4S3 小时前
Java多线程编程:Thread与Runnable的并发控制
java·开发语言
ZhengEnCi4 小时前
03ab-PyTorch安装教程 📚
python
前端老石人4 小时前
HTML 字符引用完全指南
开发语言·前端·html
matlab_xiaowang4 小时前
Redux 入门:JavaScript 可预测状态管理库
开发语言·javascript·其他·ecmascript
狐狐生风4 小时前
LangChain 向量存储:Chroma、FAISS
人工智能·python·学习·langchain·faiss·agentai
虹科网络安全4 小时前
艾体宝干货|数据复制详解:类型、原理与适用场景
java·开发语言·数据库
狐狐生风4 小时前
LangChain RAG 基础
人工智能·python·学习·langchain·rag·agentai
axng pmje5 小时前
Java语法进阶
java·开发语言·jvm
老前端的功夫5 小时前
【Java从入门到入土】28:Stream API:告别for循环的新时代
java·开发语言·python