matplotlib处理数据可是化的时候出现中文显示异常,为[][]的解决方法

1、在使用matplotlib处理数据实现可是化操作的时候,处于语言习惯,经常会使用中文做图表备注,而中文显示会出现异常,如下图:

matplotlib处理数据可是化的时候出现中文显示异常,为[][]的解决方法_第1张图片

                     中文显示异常

那如何解决呢,实际上我们只需要在代码中添加两行内容即可:

# 中文处理
16 plt.rcParams['font.sans-serif'] = ['SimHei']
17 plt.rcParams['axes.unicode_minus'] = False
matplotlib.rcparams()函数,在载入matplotlib模块时会被调用返回配置字典rpcParams,用户可以通过上面的方式修改字典中的参数,解决中文乱码问题。

matplotlib处理数据可是化的时候出现中文显示异常,为[][]的解决方法_第2张图片

下面附带该实例的完整代码:

 1 """
 2     作者:虞曦非虞兮
 3     功能:掷骰子
 4     版本:V5.0
 5     日期:2018/12/8
 6     2.0新增功能:模拟掷2个骰子
 7     3.0新增功能:可视化掷骰子结果
 8     4.0新增功能:对结果进行简单的数据分析和统计
 9     5.0新增功能:使用科学计算库简化程序,完善数据可视化结果
10 """
11 import matplotlib.pyplot as plt
12 import numpy as np
13 
14 
15 # 中文处理
16 plt.rcParams['font.sans-serif'] = ['SimHei']
17 plt.rcParams['axes.unicode_minus'] = False
18 
19 
20 def main():
21     """
22     主函数
23     :return:
24     """
25     total_times = 10000
26 
27     # 初始化列表
28     roll1_arr = np.random.randint(1, 7, size=total_times)
29     roll2_arr = np.random.randint(1, 7, size=total_times)
30 
31     roll_arr = roll1_arr + roll2_arr
32     hist, bins = np.histogram(roll_arr,bins=range(2,14))
33     print(hist)
34     print(bins)
35 
36     #   数据可视化
37     tick_lables = ['2点', '3点', '4点', '5点', '6点', '7点', '8点', '9点', '10点', '11点', '12点']
38     tick_pos = np.arange(2, 13)+0.5
39     plt.xticks(tick_pos, tick_lables)
40     plt.title('骰子点数统计')
41     plt.xlabel('点数')
42     plt.ylabel('频率')
43     plt.hist(roll_arr, bins=range(2, 14), density=1, edgecolor='black', linewidth=0.5,rwidth= 0.8)
44     plt.show()
45 
46 if __name__ == '__main__':
47     main()

 

转载于:https://www.cnblogs.com/SpringFull/p/10150962.html

你可能感兴趣的:(python)