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 23 天前 1
挺好,第一次用 matplotlib 为了显示中文折腾了很久
|
2
freefcw 23 天前 1
给楼主点赞,确实很方便
|
3
fbichijing 23 天前
不是两行代码的问题吗......
|
4
huangyezhufeng OP @fbichijing #3 手动搞,要自己下载字体再指定路径的,够麻烦的了..
|
5
syh2 22 天前 1
前段时间在 Linux 服务器用 Jupyter Lab 确实折腾了很久,这个是我目前看到最快捷的解决方法了,感谢 OP !
|
6
siriussilen 22 天前 1
谢谢,工作上很有帮助
|
7
dant 22 天前 1
自带中易黑体可能会产生版权问题,可以考虑换成思源黑体或者(如果在意分发大小的话) Droid Sans Fallback
|
8
fbichijing 22 天前
@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 的一些版权问题,没太找到明确的解释。
|
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 21 天前 1
简单易用,感谢开发
|
13
Syiize 21 天前
可以添加相应的函数,让用户能够设置自己想要使用的字体吗?
|
14
zsk425 21 天前
能支持 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 21 天前
原来 3.8 已经 EOL 了,那确实没必要支持
|
18
syh2 7 小时 1 分钟前
OP 你这个包是不是已经不能用了,今天试了一下显示还是乱码,之前倒是可以
|
19
huangyezhufeng OP @syh2 #18 可以提个 issue 贴下具体的环境和复现的代码。我这里测试了新版本也没有复现问题。
|