可视化是数据探索性分析及结果表达的一种非常重要的形式,因此打算写一个python绘图系列,本文是第一篇,先说一下pandas.DataFrame.plot()绘图功能。

pandas.DataFrame.plot()

在0.23.4版本的pandas中,pandas.DataFrame.plot()中常用的参数有以下几个

  • x:横坐标上的标签,一般是DataFrame中某个column的名称,默认为None
  • y:纵坐标上要显示的column,如果不指定column,则默认会绘制DataFrame中所有对象类型为数值型的columns,非数值对象类型的column不显示
  • kind:选择图表类型,默认为折线图。可选参数为‘line’(折线图)、‘bar’(柱状图,竖直方向)、‘barh’(柱状图,水平方向)、‘hist’(直方图)、‘box’(箱线图)、‘kde’(核密度估计图)、‘area’(面积图)、‘pie’(饼状图)、‘scatter’(散点图)、‘hexbin’(全成为hexagonal binning,有点类似热点图,用于显示一个区域中点的个数,不过是用正六边形表示数值区域)
  • ax:matplotlib中的axes对象(可以理解为子图对象)。在多子图(使用matplotlib的subplots()函数,或者add_subplot()函数时),可以通过该参数选择在哪个子图上绘制图形。参数默认为None
  • subplots:是否单独显示每个columns,默认为False。设置为True时,会将每个columns的数据单独在一个子图中显示
  • sharex:仅作用于"subplots"为True时,是否允许所有的子图共用同一个X轴标签。当“ax”为None时,“sharex”默认为True;当“ax”不为None,“sharex”默认为False,此时每一个子图有自己单独的X轴标签。
  • sharey:当“ax”不为None或"subplots"为True是,是否允许共用一个Y轴标签,默认为False。
  • layout:当“subplots”为True时,用于布置图片显示布局,图片按几行、几列显示,参数为元组。
  • figsize:元组类型,设置图片尺寸。
  • use_index:是否使用DataFarme的index作为X轴标签,默认为True。当参数“x”不为None时。当DataFrame的index为非数值(包括字符串、datetime等类型),use_index参数设置无效。
  • title:设置图标标题。
  • grid:是否显示网格线,默认为False。
  • legend:是否显示图例,默认为True,图例就是clolumn的名称。
  • style:设置线型,默认为直线。
  • xticks:设置X轴上的坐标值,需要数值型序列。
  • yticks:同"xticks",作用于Y轴
  • xlim:设置图片中X轴数值刻度显示的区间范围,元祖类型
  • ylim:同xlim,作用于Y轴
  • rot:X/Y轴上的刻度值显示时候旋转的角度,水平绘图时旋转X轴坐标,竖直绘图时旋转Y坐标
  • fontsize:设置X/Y坐标的字体尺寸
  • colormap:设置图形显示的颜色,用matplotlib内指定的表示颜色的字符串或者colormap对象指定
  • colorbar:是否显示颜色条,仅仅在绘制有颜色条的图形时使用,如‘scatter’、‘henbin’图
  • position:仅作用于绘制柱状图时,取值范围[0,1],用于设置X坐标显示的位置,0表示显示在最左边的柱条处,1表示显示在最右边的柱条处。
  • sort_columns:是否允许对columns的名称进行排序、决定绘图顺序
  • scondary_y:是否在第二个(一般默认指右边的Y轴)Y轴上绘图,默认为False。该参数还可以传入一个list或tuple,表示指定哪些columns在第二个Y轴上绘图。
  • mark_right:当使用第二个Y绘图时,是否允许在图例的右边加上“right”字样,表明是在第二个轴上绘图,默认是True
  • **kwds:该参数表明除去以上参数外,你可以传入matplotlib其它的绘图方法

函数返回值: matplotlib.axes.Axes对象,或者包含该对象的numpy.adarray对象

pandas.DataFarme.plot()绘图功能内部使用的还是matplotlib库的绘图函数,只不过对DataFarme结构来说,DataFarme.plot()用起来显得方便一些,如果对图形做更深层次的自定义,还是用matplotlib绘图更合适一些,可以对更多参数进行设置。

另外需要说明的是,可以通过“kind”参数选择绘制各种类型的图形,但也可以采用DataFrame.plot().bar()(柱状图)这种形式,然后再去设置这种图形绘制时的参数,一般建议采用DataFrame.plot.bar()形式。

   

pandas.DataFarme内置的绘图功能参数说明的更多相关文章

  1. django内置的分页功能

    django内置的分页功能 # 先导入需要查询的模型类 from game.models import Score # 导入内置的分页功能 from django.core.paginator imp ...

  2. Python面向对象——内置对象的功能扩展

    1.扩展Python内置类 Python的数据类型 列表(list).字典(dict).集合(set).文件(file).字符串(str),这些都是对象 扩展list的功能,详解如图: 我们给列表添加 ...

  3. [转帖]Windows 内置端口转发功能

    如何在Windows中使用netsh命令进行端口转发 https://www.freebuf.com/articles/system/176889.html 早上自己做了下实验,的确可以.linux下 ...

  4. django 和 mongdb 写一个简陋的网址,以及用django内置的分页功能

    https://github.com/factsbenchmarks/simple_websit_about_58 一 设置 数据库的设置 在settings文件中加入这样一段代码: from mon ...

  5. 腾讯课堂1:使用Jmeter内置的录制功能进行录制

    1.设置http代理服务器 打开火狐——点击选项——高级——网络——设置  设置完成点击确定 2.查看端口是否被占用的命令 netstat -ano 3.排除模式 .*\.gif .*\.css .* ...

  6. 深入浅出CChart 每日一课——快乐高四第九课 于无声处,CChart内置功能介绍之数据存取篇

    笨笨长期以来一直使用Origin软件画图和处理数据,但Origin软件没有编程语言的接口.笨笨开发CChart的一个潜在的目标.是想实现Origin软件的功能.当然这是一个不可能达到的目标.Origi ...

  7. day16_函数作用域_匿名函数_函数式编程_map_reduce_filter_(部分)内置函数

    20180729    补充部分代码 20180727    上传代码 #!/usr/bin/env python # -*- coding:utf-8 -*- # ***************** ...

  8. Eclipse JavaEE设置内置浏览器和外部浏览器

    Eclipse JavaEE设置内置浏览器和外部浏览器 我们在使用Java EE版本的Eclipse开发Java Web程序时,Eclipse会有一个默认的内置浏览器查看网页的效果,如下图 但是内置浏 ...

  9. Windows Azure 自动伸缩已内置

     WindowsAzure平台提供的主要优点之一是能够在有需要时快速缩放云中的应用程序以响应波动.去年7月以前,您必须编写自定义脚本或使用其他工具(如Wasabi或MetricsHub)来启用自动 ...

随机推荐

  1. 50种编程语言,一句 “Hello, World”!展现编程语言七十年发展!

    mod confinment { use std::os::raw::{c_char}; extern "C" { pub fn puts(txt: *const c_char); ...

  2. 非科班8k,靠这套知识体系收入暴涨100%!

    我是18年毕业,非科班,毕业即进入互联网行业.坐标深圳,java程序员,当时到手薪资8k左右. bat等大厂月薪薪资动辄20k,25k,还不包括"签字费",福利和奖金.当然,薪资也 ...

  3. [Leetcode题解]2. 两数相加-链表遍历和重构

    1. 审题leetcode 02 add-two-numbers​ 我们先看一下题目,如下  : 链表的从前往后为数字的低位到高位,模拟加法手算过程,从前往后遍历即可, 注意每个数字0-9,进位要处理 ...

  4. spring boot:用itextpdf处理pdf表格文件(spring boot 2.3.2)

    一,什么是itextpdf? 1,itextpdf的用途 itextpdf是用来生成PDF文档的一个java类库, 通过iText可以生成PDF文档, 还可以把XML/Html文件转化为PDF文件 2 ...

  5. git学习(三) git的分支操作

    git的分支操作 软件项目中启动一套单独的开发线的方法,可以很好的避免版本兼容开发的问题,避免不同版本之间的相互影响,封装一个开发阶段,解决bug的时候新建分支,用于对该bug的研究: git中跟分支 ...

  6. 计算机CPU是怎么认识代码的?

    先说一下半导体,啥叫半导体?就是介于导体和绝缘体中间的一种东西,比如二极管.   电流可以从A端流向C端,但反过来则不行.你可以把它理解成一种防止电流逆流的东西. 当C端10V,A端0V,二极管可以视 ...

  7. 走在深夜的小码农 Fifth Day

    Css3 Fifth Day writer:late at night codepeasant 学习大纲: 一.css三大特性 1.层叠性 ​ 相同选择器给设置相同的样式,此时一个样式就会覆盖(层叠) ...

  8. 机器学习 第4篇:sklearn 最邻近算法概述

    sklearn.neighbors 提供了针对无监督和受监督的基于邻居的学习方法的功能.监督的基于最邻近的机器学习算法是值:对带标签的数据的分类和对连续数据的预测(回归). 无监督的最近算法是许多其他 ...

  9. .netcore跨域设置

    跨域 广义上讲,跨域是指一个域下的文档或者脚本试图去请求访问另一个域下的资源(像我们直接通过代码使用http请求资源,或者是使用辅助工具(例如postman)是可以直接访问的,没有跨域的概念):而我们 ...

  10. OJ-2:区间问题【九度1554】

      题目描述: 给定一个数组,判断数组内是否存在一个连续区间,使其和恰好等于给定整数k. 输入: 输入包含多组测试用例,每组测试用例由一个整数n(1<=n<=10000)开头,代表数组的大 ...