阿里云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中文及"-"乱码显示问题

相关文章
|
7月前
|
Python
NumPy 1.26 中文官方指南(五)
NumPy 1.26 中文官方指南(五)
53 1
|
7月前
|
索引 Python
NumPy 1.26 中文官方指南(一)(4)
NumPy 1.26 中文官方指南(一)
69 1
|
7月前
|
API C语言 索引
NumPy 1.26 中文官方指南(四)(4)
NumPy 1.26 中文官方指南(四)
50 1
|
机器学习/深度学习 API Python
阿里云DSW实例wandb使用示例
wandb是一个免费的,用于记录实验数据的工具。wandb相比于tensorboard之类的工具,有更加丰富的用户管理,团队管理功能,更加方便团队协作。本文主要演示如何在阿里云DSW实例中使用wandb。
855 1
|
机器学习/深度学习 运维 IDE
阿里云PAI DSW实例安装Python37
PAI-DSW是一款云端机器学习开发IDE,为您提供交互式编程环境,适用于不同水平的开发者。PAI-DSW集成了开源JupyterLab,并以插件化的形式进行深度定制化开发。您无需任何运维配置,即可进行Notebook编写、调试及运行Python代码。同时,PAI-DSW提供丰富的计算资源,且对接多种数据源。通过EASCMD的方式,可以将PAI-DSW获得的训练模型部署为RESTful接口,对外提供模型服务,从而实现一站式机器学习。本文主要演示如何在DSW实例中安装Python37并创建JupyterLab。
11063 6
阿里云PAI DSW实例安装Python37
|
弹性计算 Python
Python3获取ECS相关信息
使用python获取帐号下ecs 信息
1174 0
|
弹性计算 JSON Linux
使用Python获取ECS相关信息2
上一次我们已经知道如何用python获取ECS信息了,不知道的可以点这里 1.返回数据格式 通过上回的代码,我们将会获得如下的数据(json格式) {"PageNumber":1,"TotalCount":1,"PageSize":10,"RequestId":"CF15510B-9510-.
1476 0
|
弹性计算 API 开发工具
使用Python获取ECS相关信息
如何使用python获取ECS相关信息
3005 0
|
Java
ECS-DescribeRegions接口支持中、英及日文
ECS中该接口DescribeRegions用于查询可以使用阿里云的地域信息。目前,接口DescribeRegions查询出来的地域信息中,地域名称仅支持中文显示,并且没有地域相关联的 Endpoint 信息。
985 0
|
算法 数据挖掘
应该是最新最详细的MUMmer中文使用说明
如何使用MUMmer比对大片段序列 测序技术刚开始发展的时候,大家得到的序列都是单个基因的长度,所以一般都是逐个基因的比较,用的都是BLAST或FASTA通过逐个基因联配的方式搜索数据库。
1625 0