阿里云DSW实例matplotlib中文字符支持问题

简介: DSW默认并未安装中文字符集,在使用matplotlib换图图标使用到中文的时候,往往无法正常显示中文字符。下面通过下载字符集及代码指定的方式提供一种DSW作图支持中文字符集的方法。

Step By Step

下载字符集:SimHei.tff到fonts目录
## 查看文件位置
import matplotlib  
matplotlib.matplotlib_fname()
  • 输出

'/home/pai/lib/python3.6/site-packages/matplotlib/mpl-data/matplotlibrc'

图片.png

修改配置文件:matplotlibrc(249、400行取消注释;257行取消注释并添加SimHei)
249行: font.family:  sans-serif

257行:font.sans-serif: DejaVu Sans, Bitstream Vera Sans, Computer Modern Sans Serif, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif,SimHei
400行:axes.unicode_minus: False
修改后需要更新以下缓存,并重启kernel
from matplotlib.font_manager import _rebuild
_rebuild()
测试
import numpy as np
import matplotlib.pyplot as plt

# plt.rcParams['font.sans-serif'] = ['sans-serif']  # 用来正常显示中文标签,黑体的 name 为 SimHei
plt.rcParams['font.size'] = 16  # 设置字体大小
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False

# plt.rcParams["font.sans-serif"] = "SimHei"
# plt.rcParams["axes.unicode_minus"] = False
plt.rcParams["figure.figsize"] = (10.0, 4.0)  # 设置图片尺寸
plt.ylim(0, 400000)

x = np.array(['20220817', '20220818', '20220819', '20220820', '20220821', '20220822', '20220823', '20220824'])
y = np.array([371474, 329045, 328917, 329708, 327453, 328251, 327969, 327334])


plt.title("整体实例数变化趋势")
plt.xlabel("日期")
plt.ylabel("总实例数目")

plt.plot(x, y, color = 'g',linewidth = 3)  # 画图

plt.grid(color = 'r', linestyle = '--', linewidth = 0.5)
plt.savefig('./total_count_change.png')

plt.show()

图片.png

更多参考

解决Linux环境下Jupyter中matplotlib中文乱码问题
解决ubuntu中jupyter中文及"-"乱码显示问题

相关文章
|
4月前
|
BI 索引 Python
NumPy 1.26 中文官方指南(一)(2)
NumPy 1.26 中文官方指南(一)
51 1
NumPy 1.26 中文官方指南(一)(2)
|
4月前
|
存储 BI 索引
NumPy 1.26 中文官方指南(一)(3)
NumPy 1.26 中文官方指南(一)
33 1
|
4月前
|
存储 数据建模 索引
NumPy 1.26 中文官方指南(三)(1)
NumPy 1.26 中文官方指南(三)
53 1
|
4月前
|
编译器 C语言 C++
NumPy 1.26 中文官方指南(三)(2)
NumPy 1.26 中文官方指南(三)
52 1
|
4月前
|
存储 程序员 BI
NumPy 1.26 中文官方指南(一)(1)
NumPy 1.26 中文官方指南(一)
50 1
|
4月前
|
索引 Python
NumPy 1.26 中文官方指南(一)(4)
NumPy 1.26 中文官方指南(一)
47 1
|
4月前
|
机器学习/深度学习 存储 数据可视化
NumPy 1.26 中文官方指南(二)(4)
NumPy 1.26 中文官方指南(二)
64 1
|
4月前
|
存储 程序员 API
NumPy 1.26 中文官方指南(四)(1)
NumPy 1.26 中文官方指南(四)
35 1
|
4月前
|
存储 数据可视化 数据挖掘
NumPy 1.26 中文官方指南(二)(2)
NumPy 1.26 中文官方指南(二)
53 0
|
4月前
|
存储 数据可视化 索引
NumPy 1.26 中文官方指南(二)(3)
NumPy 1.26 中文官方指南(二)
24 1