如何解决使用Python3调用matplotlib时出现的中文乱码问题?
- 内容介绍
- 文章标签
- 相关推荐
本文共计539个文字,预计阅读时间需要3分钟。
问题描述:我用来自绘柱形图的横坐标上的数据,但是网上大部分说的是更改横纵坐标标签的乱码问题,而不是横坐标数据乱码问题。
解决方案:更改横坐标标签的中文不乱码+import
1. 确保你使用的库支持中文标签,例如matplotlib。
2.在设置标签时,使用utf-8编码格式。
3.在导入数据时,确保数据文件使用正确的编码格式,通常是utf-8。
4.使用`import pandas as pd`导入数据,然后使用`df['column_name'].astype(str)`确保标签转换为字符串类型。
5.在绘图时,使用`plt.xticks()`设置横坐标标签。
问题描述
我用来绘制柱形图,横坐标上面的数据, 但是网上大部分说的都是更改横纵坐标标签的乱码问题,而不是横坐标数据乱码问题
解决办法
import matplotlib
num_list = [1,2]
keyword_list = ['好好学习','天天向上']
myfont = matplotlib.font_manager.FontProperties(fname=font_path) #这里的font_path写中文字体ttf的路径
plt.title('统计信息',fontproperties = myfont)
plt.bar(range(len(num_list)), num_list,color='rgb',tick_label=keyword_list)
plt.ylabel('匹配文章数量',fontproperties = myfont)
plt.xlabel('关键字',fontproperties = myfont)
plt.show()
执行结果:
可以看到横坐标的中文数据乱码根本没有变化, 只有横坐标的标签和纵坐标的标签正常显示中文了
2.终极解决办法
import matplotlib.pyplot as pltfrom pylab import *
num_list = [1,2]
keyword_list = ['好好学习','天天向上']
mpl.rcParams['font.sans-serif'] = ['SimHei']
plt.title('统计信息')
plt.bar(range(len(num_list)), num_list,color='rgb',tick_label=keyword_list)
plt.ylabel('匹配文章数量')
plt.xlabel('关键字')
plt.show()
执行结果:
可以看到只要加导入一个库,再加入一条语句就可以实现中文正常显示了
作者:Hello_wshuo
本文共计539个文字,预计阅读时间需要3分钟。
问题描述:我用来自绘柱形图的横坐标上的数据,但是网上大部分说的是更改横纵坐标标签的乱码问题,而不是横坐标数据乱码问题。
解决方案:更改横坐标标签的中文不乱码+import
1. 确保你使用的库支持中文标签,例如matplotlib。
2.在设置标签时,使用utf-8编码格式。
3.在导入数据时,确保数据文件使用正确的编码格式,通常是utf-8。
4.使用`import pandas as pd`导入数据,然后使用`df['column_name'].astype(str)`确保标签转换为字符串类型。
5.在绘图时,使用`plt.xticks()`设置横坐标标签。
问题描述
我用来绘制柱形图,横坐标上面的数据, 但是网上大部分说的都是更改横纵坐标标签的乱码问题,而不是横坐标数据乱码问题
解决办法
import matplotlib
num_list = [1,2]
keyword_list = ['好好学习','天天向上']
myfont = matplotlib.font_manager.FontProperties(fname=font_path) #这里的font_path写中文字体ttf的路径
plt.title('统计信息',fontproperties = myfont)
plt.bar(range(len(num_list)), num_list,color='rgb',tick_label=keyword_list)
plt.ylabel('匹配文章数量',fontproperties = myfont)
plt.xlabel('关键字',fontproperties = myfont)
plt.show()
执行结果:
可以看到横坐标的中文数据乱码根本没有变化, 只有横坐标的标签和纵坐标的标签正常显示中文了
2.终极解决办法
import matplotlib.pyplot as pltfrom pylab import *
num_list = [1,2]
keyword_list = ['好好学习','天天向上']
mpl.rcParams['font.sans-serif'] = ['SimHei']
plt.title('统计信息')
plt.bar(range(len(num_list)), num_list,color='rgb',tick_label=keyword_list)
plt.ylabel('匹配文章数量')
plt.xlabel('关键字')
plt.show()
执行结果:
可以看到只要加导入一个库,再加入一条语句就可以实现中文正常显示了
作者:Hello_wshuo

