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

pandas——plot()方法可视化

pandas——plot()方法可视化

作者:AOAIYI
创作不易,如果觉得文章不错或能帮助到你学习,记得点赞收藏评论哦
在此,感谢你的阅读


文章目录

  • pandas——plot()方法可视化
  • 一、实验目的
  • 二、实验原理
  • 三、实验环境
  • 四、实验内容
  • 五、实验步骤


一、实验目的

熟练掌握使用pandas中数据用plot方法绘制图

二、实验原理

绘图方法允许除了默认的线图之外的一些绘图样式,这些方法可以通过plot()的关键字参数kind提供。这些包括:

bar 、barh:绘制条形图

hist:绘制直方图

box:绘制箱型图

kde、density:绘制密度图

area:面积图

scatter:绘制散点图

hexbin:棱形图

pie:绘制饼图

三、实验环境

Python 3.6.0以上

Jupyter

四、实验内容

练习使用pandas中数据用plot方法绘制图。

五、实验步骤

1.编写代码,使用Series的plot绘制Series中数据的分布图

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
ts = pd.Series(np.random.randn(1000),index=pd.date_range('1/1/2000',periods=1000)) #创建一个Series
ts = ts.cumsum() #对Series数据进行累加求和
ts.plot() #使用plot方法绘制Series中数据分布图
plt.show()

在这里插入图片描述

2.创建一个DataFrame名为df,使用df的plot绘制df中数据的分布图,代码如下:

import numpy as np
import pandas as pd
import matplotlib.pyplot as pltts = pd.Series(np.random.randn(1000),index=pd.date_range('1/1/2000',periods=1000)) #创建一个Series
df = pd.DataFrame(np.random.randn(1000,4),index=ts.index,columns=list('ABCD')) #创建一个DataFrame
df = df.cumsum() #对df数据进行累加求和df.plot()
plt.show()

在这里插入图片描述

3.创建一个DataFrame名为df,使用df的plot方法绘制df第6行数据的条形图,代码如下:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
ts = pd.Series(np.random.randn(1000),index=pd.date_range('1/1/2000',periods=1000)) #创建一个Series
df = pd.DataFrame(np.random.randn(1000,4),index=ts.index,columns=list('ABCD')) #创建一个DataFrame
df = df.cumsum() #对df数据进行累加求和
df.iloc[5].plot(kind='bar')
plt.axhline(0,color='k')
plt.show()

在这里插入图片描述

4.创建一个DataFrame名为df2,使用df2的plot.bar()方法绘制df2数据的条形图,代码如下:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
df2 = pd.DataFrame(np.random.rand(10,4),columns=['a','b','c','d'])
df2.plot.bar()
plt.show()

在这里插入图片描述

5.使用plot.bar方法对上述df2数据绘制一个堆叠的条形图,通过设置参数stacked=True,代码如下:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
df2 = pd.DataFrame(np.random.rand(10,4),columns=['a','b','c','d'])
df2.plot.bar(stacked=True)
plt.show()

在这里插入图片描述

6.使用plot.barh方法对上述df2数据,通过设置参数stacked=True,绘制一个水平堆叠条形图,代码如下:

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df2 = pd.DataFrame(np.random.rand(10, 4), columns=['a', 'b', 'c', 'd'])  
df2.plot.barh(stacked=True)  
plt.show()  

在这里插入图片描述

7.创建一个DataFrame名为df3,使用df3的plot.hist()方法绘制df3数据的直方图,代码如下:

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df3 = pd.DataFrame({'a': np.random.randn(1000) + 1, 'b': np.random.randn(1000),'c': np.random.randn(1000) - 1}, columns=['a', 'b', 'c'])  
df3.plot.hist(alpha=0.5)  
plt.show()

在这里插入图片描述

8.使用plot.hist()方法对上述df3数据,通过设置堆叠参数stacked=True,设置条数大小参数bins=20,绘制一个堆叠直方图,代码如下:

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df3 = pd.DataFrame({'a': np.random.randn(1000) + 1, 'b': np.random.randn(1000),'c': np.random.randn(1000) - 1}, columns=['a', 'b', 'c'])  
df3.plot.hist(stacked=True, bins=20)  
plt.show() 

在这里插入图片描述

9.创建一个DataFrame名为df4,使用df4的plot.box()方法绘制df3数据的箱型图,代码如下:

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df4 = pd.DataFrame(np.random.rand(10, 5), columns=['A', 'B', 'C', 'D', 'E'])  
df4.plot.box()  
plt.show()  

在这里插入图片描述

10.创建一个DataFrame名为df5,使用df5的plot.scatter()方法绘制df5数据的散点图,代码如下:

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df5 = pd.DataFrame(np.random.rand(50, 4), columns=['a', 'b', 'c', 'd'])  
df5.plot.scatter(x='a', y='b');  
plt.show()  

在这里插入图片描述

11.创建一个DataFrame名为df6,使用df6的plot.pie()方法绘制df6数据的饼图,代码如下:

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df6 = pd.DataFrame(3 * np.random.rand(4, 2), index=['a', 'b', 'c', 'd'], columns=['x', 'y'])  
df6.plot.pie(subplots=True, figsize=(8, 4))  
plt.show()  

在这里插入图片描述


相关文章:

pandas——plot()方法可视化

pandas——plot()方法可视化 作者:AOAIYI 创作不易,如果觉得文章不错或能帮助到你学习,记得点赞收藏评论哦 在此,感谢你的阅读 文章目录pandas——plot()方法可视化一、实验目的二、实验原理三、实验环境四、实验内容五、实验步骤…...

【Three.js基础】坐标轴辅助器、requestAnimationFrame处理动画、Clock时钟、resize页面尺寸(二)

🐱 个人主页:不叫猫先生 🙋‍♂️ 作者简介:前端领域新星创作者、阿里云专家博主,专注于前端各领域技术,共同学习共同进步,一起加油呀! 💫系列专栏:vue3从入门…...

C++之完美转发、移动语义(forward、move函数)

完美转发1. 在函数模板中,可以将自己的参数“完美”地转发给其它函数。所谓完美,即不仅能准确地转发参数的值,还能保证被转发参数的左、右值属性不变。2. C11标准引入了右值引用和移动语义,所以,能否实现完美转发&…...

LeetCode刷题系列 -- 48. 旋转图像

给定一个 n n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。示例 1:输入:matrix [[1,2,3],[4,5,6],[7,8,9]]输出&#…...

在多线程环境下使用哈希表

一.HashTable和HashMapHashTable是JDK1.0时创建的,其在创建时考虑到了多线程情况下存在的线程安全问题,但是其解决线程安全问题的思路也相对简单:在其众多实现方法上加上synchronized关键字(效率较低),保证…...

【排序算法】堆排序(Heap Sort)

堆排序是指利用堆这种数据结构所设计的一种排序算法。堆是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。堆排序介绍学习堆排序之前,有必要了解堆!若…...

分类预测 | Matlab实现SSA-RF和RF麻雀算法优化随机森林和随机森林多特征分类预测

分类预测 |Matlab实现SSA-RF和RF麻雀算法优化随机森林和随机森林多特征分类预测 目录分类预测 |Matlab实现SSA-RF和RF麻雀算法优化随机森林和随机森林多特征分类预测分类效果基本介绍模型描述程序设计参考资料分类效果 基本介绍 Matlab实现SSA-RF和RF麻雀算法优化随机森林和随机…...

Allegro如何添加ICT操作指导

Allegro如何添加ICT操作指导 当PCB板需要做飞针测试的时候,通常需要在PCB设计的时候给需要测试的网络添加上ICT。 如图: Allegro支持给网络添加ICT,具体操作如下 首先在库中创建一个阻焊开窗的过孔,比如via10-ict一般阻焊开窗的尺寸比盘单边大2mil 在PCB中选择Manufacture…...

软件架构设计(二)——领域架构、基于架构的软件开发方法

目录 一、架构描述语言 ADL 二、特定领域软件架构 DSSA 三、DSSA的三层次架构模型 . 四、基于架构的软件开发方法 (1)基于架构的软件设计(ABSD) (2)开发过程 一、架构描述语言 ADL ADL是一种形式化语言,它在底层语义模型的支持下,为软件系统概念体…...

数组常用方法(2)---数组遍历方法

1. forEach(cb) 回调函数中有三个参数,第一个是当前遍历项(必须),第二个是索引,第三个是遍历的数组本身。forEach() 对于空数组不会执行回调函数。forEach()不会使用回调函数的返回值,返回值为undefined。…...

卸载Node.js

0 写在前面 无论您是因为什么原因要卸载Node.js都必须要卸载干净。 请阅读: 1 卸载步骤 1.1通过控制面板卸载node.js winR—>control.exe—>卸载程序—>卸载Node.js 等待—>卸载成功 1.2 删除安装时的nodejs文件夹 通过记忆或者Everthing搜索找…...

发表计算机SCI论文,会经历哪些过程? - 易智编译EaseEditing

一、选期刊。 一定要先选期刊。每本期刊都有自己的特色和方向,如果你的稿子已经成型,再去考虑期刊选择的问题,恐怕后期不是退稿就是要大面积修改稿子。 选期刊的标准没有一定的,主要是各单位都有自己的要求,当然小编…...

python中lambda的用法

1. lambada简单介绍 lambda 在Python编程中使用的频率非常高,我们通常提及的lambda表达式其实是python中的一类特殊的定义函数的形式,使用它可以定义一个匿名函数。即当你需要一个函数,但又不想费神去命名一个函数,这时候&#xf…...

网络安全协议(3)

作者简介:一名在校云计算网络运维学生、每天分享网络运维的学习经验、和学习笔记。 座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页​​​​​​ 目录 前言 一.当前流行操作系统的安全等级 1.Windows的安全等级 什么是EAL…...

102.第十九章 MySQL数据库 -- MySQL的备份和恢复(十二)

5.备份和恢复 5.1 备份恢复概述 5.1.1 为什么要备份 灾难恢复:硬件故障、软件故障、自然灾害、黑客攻击、误操作测试等数据丢失场景 参考链接: https://www.toutiao.com/a6939518201961251359/ 5.1.2 备份类型 完全备份,部分备份 完全备份:整个数据集 部分备份:只备份数…...

【C++】C++入门 类与对象(一)

类与对象(一)一、类的引入二、类的定义1、类的两种定义方式:2、成员变量命名规则的建议:三、类的访问限定符及封装1、访问限定符2、封装四、类的实例化1、类的实例化概念2、类对象的大小的计算五、this指针this指针的特性一、类的…...

笔记_js运算符

目录二进制相关运算符移位运算符<<>>&#xff5c;(位或运算)参考文档二进制相关运算符 移位运算符 移位运算就是对二进制进行有规律的移位。 tips:进制转换文档链接 << “<<”运算符执行左移位运算。在移位运算过程中&#xff0c;符号位始终保持不变…...

java面试题(十九) Mybatis

4.1 谈谈MyBatis和JPA的区别 参考答案 ORM映射不同&#xff1a; MyBatis是半自动的ORM框架&#xff0c;提供数据库与结果集的映射&#xff1b; JPA&#xff08;默认采用Hibernate实现&#xff09;是全自动的ORM框架&#xff0c;提供对象与数据库的映射。 可移植性不同&…...

Linux系统位运算函数以及相应CPU ISA实现收录

以32位数据的二进制表示为例&#xff0c;习惯的写法是LSB在左&#xff0c;MSB在右&#xff0c;注意BIT序和大小端的字节序没有关系。Linux和BIT操作有关的接口在定义在头文件bitops.h中&#xff0c;bitops.h定义有两层&#xff0c;通用层和架构层&#xff0c;对应两个bitops.h&…...

logback配置文件---logback.xml

目录常识操作logback-spring.xml 示例参考于 https://blog.csdn.net/white_ice/article/details/85065219 https://blog.csdn.net/weixin_42592282/article/details/122109703 https://www.dianjilingqu.com/629077.html 常识 https://www.dianjilingqu.com/629077.html nod…...

Web前端-设计网站公共header

设计网站公共headerheader元素是一个具有引导和导航作用的结构元素&#xff0c;很多企业网站中都有一个非常重要的header元素&#xff0c;一般位于网页的开头&#xff0c;用来显示企业名称、企业logo图片、整个网站的导航条&#xff0c;以及Flash形式的广告条等。在本网站中&am…...

引用和指针傻傻分不清

&#x1f680;&#x1f680;&#x1f680;大家觉不错的话&#xff0c;就恳求大家点点关注&#xff0c;点点小爱心&#xff0c;指点指点&#x1f680;&#x1f680;&#x1f680; 目录 &#x1f430;引用和指针的区别 &#x1f338;从现象上看 &#x1f338;从编译上看 &am…...

MySQL面试题:关系型数据库SQL和非关系型数据库NoSQL

文章目录一、四大非关系型数据库与关系型数据库的对比1. 关系型数据库2. 基于列的数据库3. 键值对存储4. 文档存储5. 图形数据库参考文章&#xff08;金文&#xff09;&#xff1a;四大非关系型数据库类型&#xff0c;你知道多少 参考文章&#xff1a;“行式存储”和“列式存储…...

1.Redis【介绍与安装】

1.常用数据库介绍 mysql的表类型[表引擎.存储引擎],memory表结构和表数据分开存储的,表结构保存在硬盘中,表数据保存在内存中memcache是一款软件,可以使用键值对的格式保存数据到内存中redis是意大利的工程师开发的开源免费的告诉缓存数据库,需要注意的是作者本身只开发了linu…...

DataStore快速上手1-preference

DataStore 概念 DataStore 可以存储两种类型的数据&#xff0c;一种是 preference&#xff0c;一种是 protobuf 每个进程在同一时间内仅能打开一个 DataStore 实例&#xff08;或者通过其他管理手段来实现多个 DataStore 交替使用&#xff09; 一个 DataStore 可以视为一张数…...

彻底掌握 MySQL InnoDB 的锁机制

本文是对沈剑大佬锁机制十多篇文章的概括总结&#xff0c;文末有全部链接&#xff0c;还参考了 10 多位其他网友的优秀分享。 1、概要 MySQL 中的锁可以按照粒度分为锁定整个表的表级锁(table-level locking)和锁定数据行的行级锁(row-level locking)&#xff1a; 表级锁具有开…...

C++继承

1.继承的概念及定义 1.1继承的概念 继承机制是面向对象程序设计使代码可以复用的最重要的手段&#xff0c;它允许程序员在保持原有类特性的基础上进行扩展&#xff0c;增加功能&#xff0c;这样产生新的类&#xff0c;称派生类。继承呈现了面向对象程序设计的层次结构&#x…...

动态代理是基于什么原理?

第6讲 | 动态代理是基于什么原理&#xff1f; 编程语言通常有各种不同的分类角度&#xff0c;动态类型和静态类型就是其中一种分类角度&#xff0c;简单区分就是语言类型信息是在运行时检查&#xff0c;还是编译期检查。 与其近似的还有一个对比&#xff0c;就是所谓强类型和弱…...

YOLO-V4经典物体检测算法介绍

在前文我们介绍了YOLO-V1~V3版本都做了哪些事&#xff0c;本文我们继续介绍YOLO-V4版本。YOLO的作者在发表完V3之后&#xff0c;发现YOLO产品被美国军方应用到了很多军事战争当中&#xff0c;这是他所不希望看见的&#xff0c;因此宣布不再继续研究。但历史和科技总是随时间不断…...

angular相关知识点总结

创建 angualr 组件和传值 angular组件其实就是个xxx.component.ts,本质还是ts文件一个html文件 1.创建组件&#xff1a;在Angular中&#xff0c;可以使用命令行工具ng generate component创建一个新组件。例如&#xff1a; ng generate component my-component这将创建一个名…...

国外优秀网站建设公司/网站交易平台

【这是很多年之前我发布在微软新闻组的一篇帖子&#xff0c;因为今天被人问到有关事宜&#xff0c;没想到在网上搜到它&#xff0c;所以放在这里以便以后参考】 经常在新闻组中听到朋友们反映这样的一些问题 一个工作簿中&#xff0c;并没有多少数据&#xff0c;但文件却很大&a…...

为企业做网站建设优化小程序包年竞价/近期重大新闻事件10条

STM32F103系列芯片的地址和寄存器映射原理、LED轮流闪烁实现 文章目录STM32F103系列芯片的地址和寄存器映射原理、LED轮流闪烁实现1 51单片机和STM32的不同点2 寄存器2.1 寄存器介绍2.2 51单片机和STM32对寄存器的操作3 地址映射和寄存器映射原理4 GPIO端口4.1 GPIO的工作模式主…...

wordpress 引流/谷歌关键词

系列文章说明MySQL系列文章包含了软件安装、具体使用、备份恢复等内容&#xff0c;主要用于记录个人的学习笔记&#xff0c;主要使用的MySQL版本为5.7.28&#xff0c;服务器系统版本为CentOS 7.5。本章节为数据库表组成详解。表是如何组成的&#xff1f;用户可以在指定的数据库…...

有什么网站做的比较高大上/网址大全导航

http://blog.csdn.net/ivy_feifei/article/details/41543051...

网站降权查询/广州aso优化

开篇 前几天&#xff0c;我写了《我的工作经历之-人生的起步》引起了大家不少的讨论和说明&#xff0c;也是非常的感谢大家支持和鼓励&#xff0c;有一些朋友提出了&#xff0c;很中肯的意见和建议&#xff0c; 有几个挺不错的&#xff0c;再次感谢&#xff0c;可能我这样的人&…...

昆明网站建设论坛/百度统计怎么使用

1.下载mysql源码包 打开地址https://dev.mysql.com/downloads/mysql/&#xff0c;选择下载MySQL Community Server源码包 分别选择Source Code和Generic Linux (Architecture Independent)选项&#xff0c;最后选择Compressed TAR Archive得到下载地址https://dev.mysql.com/ge…...