解决python绘图时,中文不能显示的问题

1.问题描述

python中绘图时,如果标签或者标题是中文,最后绘出来的图中的文字会被方框替代。

2.解决问题

第一种:

import matplotlib
matplotlib.rcParams['font.sans-serif'] = ['SimHei']     # 显示中文
# 为了坐标轴负号正常显示。matplotlib默认不支持中文,设置中文字体后,负号会显示异常。需要手动将坐标轴负号设为False才能正常显示负号。
matplotlib.rcParams['axes.unicode_minus'] = False

第二种:使用微软雅黑字体

import matplotlib.pyplot as plt

plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']  # 使用微软雅黑字体
plt.rcParams['axes.unicode_minus'] = False  # 处理负号显示异常

第三种:使用自定义字体文件

import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties

# 替换成你自己的字体文件路径
custom_font = FontProperties(fname='path/to/your/custom_font.ttf')

plt.rcParams['font.sans-serif'] = [custom_font]  # 使用自定义字体
plt.rcParams['axes.unicode_minus'] = False

第四种:使用rcParams更新

import matplotlib.pyplot as plt

# 更新rcParams配置,字体和负号设置
plt.rcParams.update({'font.size': 12, 'font.family': 'SimHei', 'axes.unicode_minus': False})

这些方法可以根据你的需要选择,尝试不同的字体或者自定义字体文件,看看哪一种适合你的项目。希望对你有帮助!

你可能感兴趣的:(python,开发语言)