当前位置: 首页 > news >正文

可视化实验三 Matplotlib库绘图及时变数据可视化

1.1  任务一 

1.1.1 恢复默认配置

#绘图风格,恢复默认配置

plt.rcParams.update(plt.rcParamsDefault)#恢复默认配置

或者

plt.rcdefaults()

1.1.2 汉字和负号的设置

import matplotlib.pyplot as plt

plt.rcParams["font.sans-serif"]="SimHei"

plt.rcParams["axes.unicode_minus"]=False

1.1.3 Matplotlib的基础学习部分

基础学习部分:

重点参考编码风格、折线图、柱形图、饼图以及子图和坐标轴等的设置。

https://matplotlib.org/stable/tutorials/introductory/quick_start.html

1.2 任务二(验证性操作)

https://matplotlib.org/stable/gallery/

  1. 子图、坐标轴和图形
  1. 图像、轮廓和字段

  1. 线、条和标记

要求:分别从上面三个模块中,选择一个图形进行复现。并说明下选择的图形适合用来处理哪一类型的数据(时变、比例、关系、复杂数据)。

1.3 任务三 实训(每一张图都需要加上标题、轴标签等基础信息)

   实验的每一步都需要截图,养成良好的习惯,也是给自己做了一份很好的笔记。

  1. 实训1 分析各产业就业人员数据特征间的关系

人口数据总共拥有4个特征,分别为就业人员、第一产业人员、第二产业人员、第三产业就业人员。根据3个产业就业人员的数量绘制散点图和折线图。部分数据如表所示。根据各个特征随时间推移发生的变化情况,可以分析出未来3各产业就业人员的变化趋势。

表 各产业就业人员的数量(部分)

年份

就业人员(万人)

第一产业就业人员(万人)

第二产业就业人员(万人)

第三产业就业人员(万人)

2000

72085

36042.5

16219.1

19823.4

2001

72797

36398.5

16233.7

20164.8

2002

73280

36640

15681.9

20958.1

2003

73736

36204.4

15927

21604.6

2004

74264

34829.8

16709.4

22724.8

2005

74647

33441.9

17766

23439.2

2006

74978

31940.6

18894.5

24142.9

2007

75321

30731

20186

24404

2008

75564

29923.3

20553.4

25087.2

要求实现:

  1. 使用pandas库读取3个产业就业人员数据。

  1. 绘制2000-2019年各产业就业人员散点图。

  1. 绘制2000-2019年各产业就业人员折线图;

  1. 分析各产业就业人员数据特征的分布与分散状况。

基于1的数据,绘制3个产业就业人员数据的饼图、柱状图和箱线图。通过柱形图可以对比分析各产业就业人员数量,通过饼图可以发现各产业就业人员的变化,绘制每个特征的箱线图则可以发现不同特征增长或减少的速率变化。

要求实现:

  1. 使用pandas库读取3个产业就业人员数据。
  2. 绘制2019年各产业就业人员饼图。

  1. 绘制2019年各个产业就业人员柱形图(要求绘制分组和堆叠柱形图)

  1. 绘制2000-2019年各产业就业人员年末总人数箱线图。

2任务四 拓展训练

Matplotlib从1.1.0版本以后就开始支持绘制动画。该类FuncAnimation允许我们通过传递一个迭代修改绘图数据的函数来创建动画。这是通过在各种 (示例:、 等)上使用setter方法来实现的。一个通常的 对象需要一个 我们想要动画的对象和一个 修改绘制在图形上的数据的函数func 。它使用帧 参数来确定动画的长度。interval参数用于确定绘制两帧之间的时间(以毫秒为单位)。

Matplotlib 中的动画过程可以用两种不同的方式来思考:

FuncAnimation:为第一帧生成数据,然后为每一帧修改此数据以创建动画图。

ArtistAnimation:生成一个艺术家列表(可迭代),将在动画的每一帧中绘制。

FuncAnimation在速度和内存方面更有效率,因为它一次绘制一个艺术家然后修改它。另一方面ArtistAnimation是灵活的,因为它允许任何可迭代的艺术家按顺序动画。

2.1 官网案例复现(ArtistAnimation)

http://www.lryc.cn/news/346267.html

相关文章:

  • 开启多线程下变量共享与私有问题
  • Qt模型视图代理之QTableView应用的简单介绍
  • 第七届精武杯部分wp
  • 3.2Java全栈开发前端+后端(全栈工程师进阶之路)-前端框架VUE3框架-企业级应用- Vuex
  • 整合 Java, Python 和 Scrapy 爬虫以传递和使用参数
  • Android 蓝牙实战——蓝牙音乐播放进度(二十)
  • SQL注入实例(sqli-labs/less-1)
  • Python中tkinter编程入门3
  • XMind 2023 v23.05.2660软件安装教程(附软件下载地址)
  • docker compose kafka集群部署
  • 最新版在线客服系统源码
  • 【比邻智选】MR880A模组
  • 超大文件去除重复数据
  • ICode国际青少年编程竞赛- Python-4级训练场-列表综合练习
  • 苹果电脑怎么安装crossover 如何在Mac系统中安装CrossOver CrossOver Mac软件安装说明
  • C++学习————第十天(string的基本使用)
  • 华为OD介绍
  • 判断点在多边形内部
  • livox雷达斜装修改
  • 【Spring】初识 Spring AOP(面向切面编程)
  • k8s各个组件的作用
  • Spring Cloud 整合Sentinel
  • Java入门基础学习笔记4——开发Helloworld入门程序
  • 了解WebSocket
  • 从开发角度理解漏洞成因(02)
  • Web实时通信的学习之旅:轮询、WebSocket、SSE的区别以及优缺点
  • TMS320F280049 CLB模块--LUT4 OUTLUT(4)
  • 功能测试_分类_用例_方法
  • [沫忘录]MySQL 锁
  • 噪声嵌入提升语言模型微调性能