pip install zhplot
安装,之后import zhplot
即可。
https://github.com/shenxiangzhuang/zhplot
import zhplot import matplotlib.pyplot as plt plt.plot([1, 2, 3, 4]) plt.title('这是一个标题') plt.xlabel('横坐标') plt.ylabel('纵坐标') plt.show()
1 Mianmiss 314 天前 ![]() 挺好,第一次用 matplotlib 为了显示中文折腾了很久 |
![]() | 2 freefcw 314 天前 ![]() 给楼主点赞,确实很方便 |
3 fbichijing 314 天前 不是两行代码的问题吗...... |
![]() | 4 huangyezhufeng OP @fbichijing #3 手动搞,要自己下载字体再指定路径的,够麻烦的了.. |
![]() | 5 syh2 313 天前 ![]() 前段时间在 Linux 服务器用 Jupyter Lab 确实折腾了很久,这个是我目前看到最快捷的解决方法了,感谢 OP ! |
![]() | 6 siriussilen 313 天前 ![]() 谢谢,工作上很有帮助 |
![]() | 7 dant 313 天前 ![]() 自带中易黑体可能会产生版权问题,可以考虑换成思源黑体或者(如果在意分发大小的话) Droid Sans Fallback |
8 fbichijing 313 天前 @huangyezhufeng 是我的理解有问题吗? ```python import matplotlib.pyplot as plt # 多两行代码 plt.rcParams['font.sans-serif'] = ['SimHei'] plt.rcParams['axes.unicode_minus'] = False plt.plot([1, 2, 3, 4]) plt.title('这是一个标题') plt.xlabel('横坐标') plt.ylabel('纵坐标') plt.show() ``` |
![]() | 9 huangyezhufeng OP @dant #7 感谢建议。这个版权问题有相关的资料吗?我之前大概查了了下 Simhei 的一些版权问题,没太找到明确的解释。 |
![]() | &bsp; 10 huangyezhufeng OP @fbichijing #8 代码没问题的。这个前提是操作系统里面已经装了对应的字体。一些 Linux 版本其实没有预装中文字体的。比如上面老哥提到的一些服务器上之类的。 |
![]() | 11 huangyezhufeng OP @dant https://github.com/shenxiangzhuang/zhplot/issues/7 感谢提醒,单独建了个 issue 。然后具体查了下,这个确实可能存在版权问题。然后思源黑体确实是比较好的备选项,不过文件确实有点太大了,然后 Droid Sans Fallback 的版权问题好像也有一丢丢不清晰。查了下目前打算换到 noto-cjk ,这个字体大小可以接受,然后版权看起来也没啥问题。有其他建议可以移步 GitHub 讨论哈~ |
![]() | 12 JeremyFeng 312 天前 ![]() 简单易用,感谢开发 |
13 Syiize 312 天前 可以添加相应的函数,让用户能够设置自己想要使用的字体吗? |
![]() | 14 zsk425 312 天前 能支持 python 3.8 么 |
![]() | 15 huangyezhufeng OP @zsk425 这里有必须使用 3.8 的场景吗?因为现在 3.8 已经 EOL 了( https://devguide.python.org/versions/), 所以这里最小支持的版本是 3.9 |
![]() | 16 huangyezhufeng OP @Syiize 是说指定字体文件路径这样吗?(如果是系统已有字体,在 matplotlib 直接指定就行) 可以开个 issue 说明一下, 我后面看看加上合不合适。 |
![]() | 17 zsk425 312 天前 原来 3.8 已经 EOL 了,那确实没必要支持 |
![]() | 18 syh2 291 天前 OP 你这个包是不是已经不能用了,今天试了一下显示还是乱码,之前倒是可以 |
![]() | 19 huangyezhufeng OP @syh2 #18 可以提个 issue 贴下具体的环境和复现的代码。我这里测试了新版本也没有复现问题。 |
![]() | 20 syh2 290 天前 @huangyezhufeng #19 可以了,我重新卸载了旧的 matplotlib ,先装 zhplot 然后附带装上 matlpotlib 就 OK 了,感谢~~ |
![]() | 21 huangyezhufeng OP @syh2 #20 好的。理论上这个安装的顺序是不影响使用的。后续有什么问题也可以反馈,我尽量及时跟进修复。 |