可视化实验三 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.mzph.cn/bicheng/8330.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java设计模式七 适配器

适配器模式(Adapter Pattern)是一种结构型设计模式,它的核心思想是将一个接口转换成客户端期望的另一个接口,使得原本不兼容的接口可以协同工作。在Java中,适配器模式可以通过类继承或对象组合的方式来实现。 ### Jav…

物体移动方向和转向问题

比如在屏幕中有一条鱼,它可以向左或向右移动,固定时间旋转方向调换移动方向。 using System.Collections; using System.Collections.Generic; using UnityEngine;public class fishMove: MonoBehaviour {public int speed 3;public Vector3 moveDirec…

Vue3 路由入门

先安装路由 npm i vue-router //创建路由器 import { createRouter, createWebHashHistory } from vue-router//1.导入组件 import Home from /components/Home.vue import News from /components/News.vue//2.配置路由映射规则 const routes [{name: home,path: /home,compo…

学习方法的重要性

原贴:https://www.cnblogs.com/feily/p/13999204.html 原贴:https://36kr.com/p/1236733055209095 1、 “一万小时定律”的正确和误区 正确: 天才和大师的非凡,不是真的天资超人一等,而是付出了持续不断的努力&…

Java数组创建与使用

一.创建和初始化 1.数组是怎么创建的? 直接举例子: int[] arr new int[10]; 这里只简单的举一个int开辟数组的例子。 可见java数组的创建于C语言是不同的。前面是一个int[ ]就是一个数组的数据类型,后面的arr是数组名,最后[…

OpenCV | 项目 | 虚拟绘画

OpenCV | 项目 | 虚拟绘画 捕捉摄像头 如果在虚拟机中运行&#xff0c;请确保虚拟机摄像头打开。 #include<opencv2/opencv.hpp>using namespace cv; using namespace std;int main() {VideoCapture cap(0);Mat img;while(1) {cap.read(img);imshow("Image"…

stm32 st7735驱动 详解

初始化指令 void LCD_Init(void) { #if USE_SIM_SPILCD_SIM_SPI_GPIO_Init(); #endifLCD_RES_0();//复位HAL_Delay(100);LCD_RES_1();HAL_Delay(100);LCD_BLK_1();//打开背光HAL_Delay(100);//************* Start Initial Sequence **********//LCD_SPI_Send_Cmd(0x11); //Sl…

华为eNSP综合实验-网络地址转换

实验完成之后,在AR1的g0/0/1接口抓包,查看地址转换 实现私网pc访问公网pc 实验命令展示 SW1: vlan batch 12 #创建vlan interface e0/0/1 #进入接口配置vlan端口 port link-type access port default vlan 12 q interface e0/0/2 #进入接口配置vlan端口 port link-type ac…

想要买到心仪的旋转式孔板流量计吗?

选择旋转式孔板流量计可不能云里雾里的乱选择呀&#xff0c;煤矿对产品质量要求很严格的。所以我们要先了解产品的再决定才是对的选择。 旋转式孔板流量计技术参数【1--5--9】 规格&#xff1a;DN15&#xff5e;DN1000 孔径比(βd/D)&#xff1a;β0&#xff0e;2—0&#xff…

数组中两个字符串的最小距离

给定一个字符串数组strs&#xff0c;再给定两个字符串str1和str2&#xff0c;返回在strs中str1和str2的最小距离&#xff0c;如果str1或str2为null&#xff0c;或不在strs中&#xff0c;返回-1。 输入描述&#xff1a; 输入包含有多行&#xff0c;第一输入一个整数n(1 ≤ n ≤…

Vue2简易登录注册模版(基于ElementUI)

Vue简易登录注册模版(基于ElementUI) 目录 Vue简易登录注册模版(基于ElementUI)Login.vueRegister.vue Login.vue <script> import RegisterView from /components/register.vueexport default {name: LoginView,data() {// 用户名规则const checkUsername (rule, valu…

node.js安装及环境配置超详细教程【Windows系统安装包方式】

Step1&#xff1a;下载安装包 https://nodejs.org/zh-cn/download/ 根据自己电脑系统及位数选择&#xff0c;我的电脑是Windows系统、64位、想下载稳定版的.msi&#xff08;LTS为长期稳定版&#xff09;这里选择windows64位.msi格式安装包。 .msi和.zip格式区别&#xff1a;…

3.yolov5训练前的图片处理详解(python)

其实&#xff0c;yolov5模型可以分为深度网络、数据处理&#xff08;图片处理&#xff09;、损失函数、优化器选择、训练和预测及部分构成&#xff0c;相信大家对训练和预测的代码比较熟悉。前面两章我们根据代码和结构图了解了yolov5的深度网络&#xff0c;接下来看数据处理的…

Linux is命令基础

Linux is命令基础 Linux操作系统是一个强大的开源操作系统&#xff0c;它提供了许多命令行工具&#xff0c;这些工具可以帮助我们管理系统&#xff0c;执行任务&#xff0c;以及进行编程。其中&#xff0c;is命令是一个非常重要的命令&#xff0c;它可以帮助我们查看文件和目录…

TouchDesigner Pro for Mac:创意无界,视觉编程新纪元

在数字化创意的海洋中&#xff0c;TouchDesigner Pro for Mac以其卓越的性能和丰富的功能&#xff0c;为设计师们打开了一个全新的视觉编程世界。 这款软件拥有强大的实时创作和视觉编程能力&#xff0c;通过拖拽和连接各种节点&#xff0c;用户可以轻松构建出复杂的实时交互系…

【触摸案例-手势解锁案例-连线到按钮 Objective-C语言】

一、接下来,我们接着来说这个,连线的问题啊, 1.连线的问题啊,也就是说,我现在点击一个按钮, 在移动到下一个按钮的时候,在两个按钮中间,在两个按钮都亮起来的时候呢,我们肯定是让它去画一条线的,那么, 1)首先,如果我现在从第一个按钮,连到第二个按钮,那么,这条…

MySQL复制与集群技术深度解析

MySQL作为一个广泛使用的开源关系型数据库管理系统&#xff0c;不仅提供了强大的数据存储和查询功能&#xff0c;还通过复制和集群技术实现了数据的高可用性、可扩展性和容错性。本文将详细介绍MySQL的主从复制配置与原理、读写分离的应用场景以及几种常见的MySQL集群解决方案。…

1. C++入门:命名空间及输入输出

C相比C的变化 兼容C面向对象泛型C的不足的弥补 为什么要有命名空间 在C/C中&#xff0c;变量、函数和后面要学到的类都是大量存在的&#xff0c;这些变量、函数和类的名称将都存在于全局作用域中&#xff0c;可能会导致很多冲突。使用命名空间的目的是对标识符的名称进行本地…

聊聊BitLocker

最近有消息称微软决定在Windows 11 24H2中默认开启BitLocker&#xff0c;这个消息在网上引起了不小的波澜。有人说&#xff0c;对于我们这些普通用户来说&#xff0c;BitLocker真的有必要吗&#xff1f; 什么是BitLocker BitLocker 是一项 Windows 安全功能&#xff0c;可为整…

CTF-WEB(MISC)

安全攻防知识——CTF之MISC - 知乎 CTF之MISC杂项从入门到放弃_ctf杂项 你的名字-CSDN博客 CTF MICS笔记总结_archpr 掩码攻击-CSDN博客 一、图片隐写 CTF杂项---文件类型识别、分离、合并、隐写_ctf图片分离-CSDN博客 EXIF&#xff08;Exchangeable Image File&#xff09;是…