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

中文显示异常

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

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

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

 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()

最新文章

  1. C++中const关键字的使用总结
  2. Fragment与FragmentAcitvity间的传值
  3. 生成freemarker静态页面的工具类
  4. Writing an Hadoop MapReduce Program in Python
  5. 三星电视删除USB播放记录
  6. 浅析JavaScript函数的参数
  7. ImageSwitcher 右向左滑动的实现方式
  8. VS2012JSON自动生成对应的类
  9. mybatis CRUD
  10. jQuery 2.0.3 源码分析Sizzle引擎解析原理
  11. win8.1下安装ubuntu 14.0 4LTS
  12. mybatis-配置文件mybatis-config.xml
  13. mayan游戏
  14. FIN_WAIT_2状态解释
  15. 微信小程序制作家庭记账本之一
  16. 如何设置httpd-mpm-conf的参数
  17. JVM虚拟机(三):参数配置
  18. C++的特点
  19. 非常实用的JavaScript小技巧
  20. SPOJ IAPCR2F 【并查集】

热门文章

  1. JavaSE 对象与类(一)
  2. 子路由path路径带 ‘/‘与不带
  3. 问题集锦 ~ javascript
  4. java struts2框架漏洞合集
  5. php 中解析xml文件
  6. .Net 6.0:WebAPI配置跨域
  7. 查电脑并修改IP地址,你晓得吗?
  8. 不需要鼠标交互的UI去掉RaycastTarget
  9. python之利用logging模块封装python日志类
  10. 关于DIFF插件的使用