0、注意事项 及 各种错误

1)绘制bar图时,如果出现重复的x值被合并到一个情况(导致X轴应该显示内容有缺失),可能是由于Pandas版本太低;

2)无法设置中文title,在代码中加入两句话:

plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False

1、plot()

说明

绘图

用法

df.plot(
x=None, y=None, kind='line', ax=None, subplots=False,
sharex=None, sharey=False, layout=None, figsize=None,
use_index=True, title=None, grid=None, legend=True,
style=None, logx=False, logy=False, loglog=False, position=None
xticks=None, yticks=None, xlim=None, ylim=None, rot=None,
xerr=None, secondary_y=False, sort_columns=False, **kwds
)

参数

参数 类型 默认值 说明
x label、position None 用哪一列的值作为x,默认index列
y label、position None 用哪几列作为y,默认全部(y中有几列就有几条折线)
kind str 'line' 哪种类型的图:

‘line’ : line plot (default)#折线图
‘bar’ : vertical bar plot#条形图
‘barh’ : horizontal bar plot#横向条形图
‘hist’ : histogram#柱状图
‘box’ : boxplot#箱线图
‘kde’ : Kernel Density Estimation plot#Kernel 的密度估计图,主要对柱状图添加Kernel 概率密度线
‘density’ : same as ‘kde’
‘area’ : area plot#不了解此图
‘pie’ : pie plot#饼图
‘scatter’ : scatter plot#散点图 需要传入columns方向的索引
‘hexbin’ : hexbin plot#不了解此图
ax matplotlib.axes None

子图(axes) 。如果没有设置,则使用当前matplotlib subplot。

figure,ax=plt.subplots(m,n)

如果要在子图[i][j]上绘图,该项参数要设置为ax[i][j]

subplots bool False 是否为每一列单独开辟子图
sharex bool

ax==None时True

否则False

在subplots=True时,共享x轴。

该项标识是否为每个子图分别显示一个x label

sharey bool False 在subplots=True时,是否共享y轴(通常不常用)
layout tuple(rows,columns) (n,1) 子图界面布局,默认是(n,1)
figsize tuple(width,height)   界面长宽,通常不用管
use_index bool True 使用Index列作为x轴
title str,list None

如果是str,则整副图像只有一个title,在中间上部

如果是list,subplots=True,则为每个子图命名

grid bool None 是否绘制网格
legend bool或'reverse' True

是否绘制图例

如果设置为'reverse',则图例反放

style list、dict   每一列对应折线的绘制方式
logx bool、'sym' False 是否使用对数横坐标
logy bool、'sym' False 是否使用对数纵坐标
loglog bool、'sym' False 是否使用对数横纵坐标
xticks sequence   设置x轴刻度
yticks sequence   设置y轴刻度

A.plot(yticks=[0,300,600]) #y轴上显示出0 300 600刻度
xlim (min,max)或[min,max]   最大最小刻度值
ylim (min,max)或[min,max]  
rot int None x轴坐标刻度的旋转角度
fontsize int None 坐标刻度文字大小
colormap str、matplotlib colormap object None 色表
colorbar bool   是否绘制色表(只用于散点图和hexbin图)
position float(0.0~0.1)   柱状图布局(只用于bar图)
table bool、Series、DataFrame False

True时,在图形中放置一个数据表格

如果给出一个Series或DataFrame,则绘制给出的数据表格

yerr DataFrame、Series、array、dict、str    
xerr DataFrame、Series、array、dict、str    
stacked bool

line和bar图中False

area图中True

堆叠图
sort_columns bool False 对列名排序后再画图
secondary bool、sequence False 右y轴
mark_right bool True 使用右y轴时,是否在图例上标注'right'
include_bool bool False 如果是True,那么boolean值也会被绘制
backend str None  

在使用plot之前,也可以使用matplotlib中的相关方法,比如:

import matplotlib.pyplot as plt

fig = plt.figure() #新建画布
ax1 = fig.add_subplot(2,1,1)#选择子画布
df.plot(ax=ax1)#在子画布上画图

返回值

matplotlib.axes.Axes 或者 多个Axes的ndarray

通过这个返回值,我们可以对具体子图进行操作(如果通过subplots参数引入了话)。

假设我们有5列,并通过subplots参数将这5列单独绘制出来,那么就能用ax[i]来访问这5幅子图,并通过像使用matplotlib.pyplot那样来使用其它的绘图函数:

ax=df.plot(subplots=True)

#假设df一共有5列,那么在激活了subplots参数后,就会有5幅子图,用ax承接plot()函数的返回值,ax就是这5幅子图的ndarray,通过ax[i]就可以访问具体的子图
for j in range(5):
ax[j].axhline(y=40000,color='red')#给每幅子图添加水平线
plt.show()

2、plot.bar()

说明

绘制柱状图

用法

df.plot.bar(x=None,y=None,**kwargs)

参数

参数

类型

默认值

说明

x label或position None 作为x的列,默认index列
y label或position None 作为y的列(可以是列名或者某一列的索引),默认所有数值列
color str、Array、List、Dict  

每条柱的颜色;

如果Color List中的数量不与列数相匹配,那么颜色就对每列循环使用

**kwargs     其他参数,和plot()的相同

Pandas:plot相关函数的更多相关文章

  1. Pandas plot出图

    1.创建一个Series 这是一个线性的数据,我们随机生成1000个数据,Series 默认的 index 就是从0开始的整数,但是这里我显式赋值以便让大家看的更清楚 >>> imp ...

  2. Pandas.plot 做图 demo(scatter,bar,pie)

    #coding:utf-8import numpy as npimport matplotlib.pyplot as pltplt.rcParams['font.sans-serif']=['SimH ...

  3. Numpy&Pandas

    Numpy & Pandas 简介 此篇笔记参考来源为<莫烦Python> 运算速度快:numpy 和 pandas 都是采用 C 语言编写, pandas 又是基于 numpy, ...

  4. numpy&pandas基础

    numpy基础 import numpy as np 定义array In [156]: np.ones(3) Out[156]: array([1., 1., 1.]) In [157]: np.o ...

  5. <转>pandas学习

    1.Pandas 基本介绍 Numpy 和 Pandas 有什么不同? 如果用 python 的列表和字典来作比较, 那么可以说 Numpy 是列表形式的,没有数值标签,而 Pandas 就是字典形式 ...

  6. Numpy and Pandas

    安装 视频链接:https://morvanzhou.github.io/tutorials/data-manipulation/np-pd/ pip install numpy pip instal ...

  7. numpy、pandas学习二

    #numpy中arrary与pandas中series.DataFrame区别#arrary生成数组,无索引.列名:series有索引,且仅能创建一维数组:DataFrame有索引.列名import ...

  8. Python【7】-数据分析准备

    一.经常用到的python库: Numpy:Python科学计算的基础包: pandas:提供了能使我们快捷的处理结构化数据的大量数据结构和函数: matplotlib:用于绘制数据图表的python ...

  9. PimaIndiansdiabetes-数据预处理实验(一)

    有趣的事,Python永远不会缺席! 如需转发,请注明出处:小婷儿的python https://www.cnblogs.com/xxtalhr/p/10859517.html 链接:https:// ...

随机推荐

  1. 不难懂-----Mock基本使用

    一.mock解决的问题 开发时,后端还没完成数据输出,前端只好写静态模拟数据.数据太长了,将数据写在js文件里,完成后挨个改url.某些逻辑复杂的代码,加入或去除模拟数据时得小心翼翼.想要尽可能还原真 ...

  2. Java高级语法之反射

    Java高级语法之反射 什么是反射 java.lang包提供java语言程序设计的基础类,在lang包下存在一个子包:reflect,与反射相关的APIs均在此处: 官方对reflect包的介绍如下: ...

  3. Vue3源码分析之微任务队列

    参考资料:https://zh.javascript.info/microtask-queue#wei-ren-wu-dui-lie-microtaskqueue 简化版 Vue3 中的 微任务队列实 ...

  4. Servlet中的Filter 过滤器的简单使用!

    package com.aaa.filter; import java.io.IOException; import javax.servlet.Filter; import javax.servle ...

  5. H264 编解码协议

    1.概述 H264是MPEG-4标准所定义的最新编码格式,同时也是技术含量最高.代表最新技术水平的视频编码格式之一,标准写法应该是H.264.H.264视频格式是经过有损压缩的,但是在技术上尽可能做到 ...

  6. Visual Studio 2022 下载链接及激活密钥

    Visual Studio 2022 下载链接:https://visualstudio.microsoft.com/zh-hans/vs/ 激活码: 专业版: TD244-P4NB7-YQ6XK-Y ...

  7. PriorityQueue的用法和底层实现原理

    定义 PriorityQueue类在Java1.5中引入并作为 Java Collections Framework 的一部分.PriorityQueue是基于优先堆的一个无界队列,这个优先队列中的元 ...

  8. iOS程序的启动过程

    UIApplicationMain main函数中执行了一个UIApplicationMain这个函数 int UIApplicationMain(int argc, char *argv[], NS ...

  9. 关于linux shell编程,alias rm='cp $@ ~/backup; rm $@'

    书上的这个例子需要在ubuntu的低版本的系统才支持,现在基本上都不支持了,想实现也很简单自己写一个脚本先备份再删除. alias也只是做了一次替换alias rm='cp $@ ~/backup; ...

  10. nodejs的安装及创建项目

    安装windows nodejs教程:1.官网下载windows安装:2.CMD中输入:npm -g install koa -generator 创建项目:1.首先新建文件夹2.CMD中输入CD 文 ...