pandas数据处理之绘图的实现


Posted in Python onJune 15, 2020

Pandas是Python中非常常用的数据处理工具,使用起来非常方便。它建立在NumPy数组结构之上,所以它的很多操作通过NumPy或者Pandas自带的扩展模块编写,这些模块用Cython编写并编译到C,并且在C上执行,因此也保证了处理速度。

今天我们就来体验一下它的强大之处。

1.创建数据

使用pandas可以很方便地进行数据创建,现在让我们创建一个5列1000行的pandas DataFrame:

mu1, sigma1 = 0, 0.1
mu2, sigma2 = 0.2, 0.2
n = 1000df = pd.DataFrame(
  {
    "a1": pd.np.random.normal(mu1, sigma1, n),
    "a2": pd.np.random.normal(mu2, sigma2, n),
    "a3": pd.np.random.randint(0, 5, n),
    "y1": pd.np.logspace(0, 1, num=n),
    "y2": pd.np.random.randint(0, 2, n),
  }
)
  • a1和a2:从正态(高斯)分布中抽取的随机样本。
  • a3:0到4中的随机整数。
  • y1:从0到1的对数刻度均匀分布。
  • y2:0到1中的随机整数。

生成如下所示的数据:

pandas数据处理之绘图的实现

2.绘制图像

Pandas 绘图函数返回一个matplotlib的坐标轴(Axes),所以我们可以在上面自定义绘制我们所需要的内容。比如说画一条垂线和平行线。这将非常有利于我们:

1.绘制平均线

2.标记重点的点

import matplotlib.pyplot as plt
ax = df.y1.plot()
ax.axhline(6, color="red", linestyle="--")
ax.axvline(775, color="red", linestyle="--")
plt.show()

pandas数据处理之绘图的实现

我们还可以自定义一张图上显示多少个表:

fig, ax = plt.subplots(2, 2, figsize=(14,7))
df.plot(x="index", y="y1", ax=ax[0, 0])
df.plot.scatter(x="index", y="y2", ax=ax[0, 1])
df.plot.scatter(x="index", y="a3", ax=ax[1, 0])
df.plot(x="index", y="a1", ax=ax[1, 1])
plt.show()

pandas数据处理之绘图的实现

3.绘制直方图

Pandas能够让我们用非常简单的方式获得两个图形的形状对比:

df[["a1", "a2"]].plot(bins=30, kind="hist")
plt.show()

pandas数据处理之绘图的实现

还能允许多图绘制:

df[["a1", "a2"]].plot(bins=30, kind="hist", subplots=True)
plt.show()

pandas数据处理之绘图的实现

当然,生成折线图也不在画下:

df[['a1', 'a2']].plot(by=df.y2, subplots=True)
plt.show()

pandas数据处理之绘图的实现

4.线性拟合

Pandas还能用于拟合,让我们用pandas找出一条与下图最接近的直线:

pandas数据处理之绘图的实现

最小二乘法计算和该直线最短距离:

df['ones'] = pd.np.ones(len(df))
m, c = pd.np.linalg.lstsq(df[['index', 'ones']], df['y1'], rcond=None)[0]

根据最小二乘的结果绘制y和拟合出来的直线:

df['y'] = df['index'].apply(lambda x: x * m + c)
df[['y', 'y1']].plot()
plt.show()

pandas数据处理之绘图的实现

到此这篇关于pandas数据处理之绘图的实现的文章就介绍到这了,更多相关pandas 绘图内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python实现清屏的方法
Apr 30 Python
在阿里云服务器上配置CentOS+Nginx+Python+Flask环境
Jun 18 Python
使用Python生成XML的方法实例
Mar 21 Python
对numpy中布尔型数组的处理方法详解
Apr 17 Python
Python实现通过继承覆盖方法示例
Jul 02 Python
Python socket套接字实现C/S模式远程命令执行功能案例
Jul 06 Python
Python实现字典按key或者value进行排序操作示例【sorted】
May 03 Python
django 做 migrate 时 表已存在的处理方法
Aug 31 Python
wxPython电子表格功能wx.grid实例教程
Nov 19 Python
Python性能分析工具Profile使用实例
Nov 19 Python
keras处理欠拟合和过拟合的实例讲解
May 25 Python
Anaconda安装pytorch及配置PyCharm 2021环境
Jun 04 Python
keras中的loss、optimizer、metrics用法
Jun 15 #Python
使用keras实现Precise, Recall, F1-socre方式
Jun 15 #Python
基于python和flask实现http接口过程解析
Jun 15 #Python
基于nexus3配置Python仓库过程详解
Jun 15 #Python
Keras官方中文文档:性能评估Metrices详解
Jun 15 #Python
在keras里面实现计算f1-score的代码
Jun 15 #Python
Python流程控制语句的深入讲解
Jun 15 #Python
You might like
php float不四舍五入截取浮点型字符串方法总结
2013/10/28 PHP
PHP之APC缓存详细介绍 apc模块安装
2014/01/13 PHP
py文件转exe时包含paramiko模块出错解决方法
2016/08/12 PHP
Laravel实现短信注册的示例代码
2018/05/29 PHP
JavaScript的parseInt 进制问题
2009/05/07 Javascript
input+select(multiple) 实现下拉框输入值
2009/05/21 Javascript
JavaScript实用技巧(一)
2010/08/16 Javascript
再次分享18个非常棒的jQuery表格插件
2011/04/10 Javascript
javascript 基础篇4 window对象,DOM
2012/03/14 Javascript
Jquery 数组操作大全个人总结
2013/11/13 Javascript
jQuery的选择器中的通配符使用介绍
2014/03/20 Javascript
jQuery实现dialog设置focus焦点的方法
2015/06/10 Javascript
基于jquery animate操作css样式属性小结
2015/11/27 Javascript
使用jQuery判断Div是否在可视区域的方法 判断div是否可见
2016/02/17 Javascript
BootStrap 智能表单实战系列(五) 表单依赖插件处理
2016/06/13 Javascript
Vue.js每天必学之Class与样式绑定
2016/09/05 Javascript
Bootstrap3 Grid system原理及应用详解
2016/09/30 Javascript
JavaScript定义数组的三种方法(new Array(),new Array('x','y')
2016/10/04 Javascript
jquery mobile实现可折叠的导航按钮
2017/03/11 Javascript
Three.js利用orbit controls插件(轨道控制)控制模型交互动作详解
2017/09/25 Javascript
JavaScript比较同一天的时间大小实例代码
2018/02/09 Javascript
用python + openpyxl处理excel2007文档思路以及心得
2014/07/14 Python
python基础教程之匿名函数lambda
2017/01/17 Python
python+selenium打印当前页面的titl和url方法
2018/06/22 Python
使用python批量读取word文档并整理关键信息到excel表格的实例
2018/11/07 Python
解决html5中的video标签ios系统中无法播放使用的问题
2020/08/10 HTML / CSS
美国汽配连锁巨头Pep Boys官网:轮胎更换、汽车维修服务和汽车零部件
2017/01/14 全球购物
Oakley西班牙官方商店:太阳眼镜和男女运动服
2019/04/26 全球购物
热爱祖国演讲稿
2014/05/04 职场文书
音乐节策划方案
2014/06/09 职场文书
家长会欢迎标语
2014/06/24 职场文书
五一促销活动总结
2014/07/01 职场文书
给老婆的检讨书(搞笑版)
2015/05/06 职场文书
掌握一个领域知识,高效学习必备方法
2019/08/08 职场文书
复制别人的成功真的会成功吗?
2019/10/17 职场文书
Python中的xlrd模块使用整理
2021/06/15 Python