Pandas:plot相关函数
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)#折线图 |
| 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相关函数的更多相关文章
- Pandas plot出图
1.创建一个Series 这是一个线性的数据,我们随机生成1000个数据,Series 默认的 index 就是从0开始的整数,但是这里我显式赋值以便让大家看的更清楚 >>> imp ...
- Pandas.plot 做图 demo(scatter,bar,pie)
#coding:utf-8import numpy as npimport matplotlib.pyplot as pltplt.rcParams['font.sans-serif']=['SimH ...
- Numpy&Pandas
Numpy & Pandas 简介 此篇笔记参考来源为<莫烦Python> 运算速度快:numpy 和 pandas 都是采用 C 语言编写, pandas 又是基于 numpy, ...
- numpy&pandas基础
numpy基础 import numpy as np 定义array In [156]: np.ones(3) Out[156]: array([1., 1., 1.]) In [157]: np.o ...
- <转>pandas学习
1.Pandas 基本介绍 Numpy 和 Pandas 有什么不同? 如果用 python 的列表和字典来作比较, 那么可以说 Numpy 是列表形式的,没有数值标签,而 Pandas 就是字典形式 ...
- Numpy and Pandas
安装 视频链接:https://morvanzhou.github.io/tutorials/data-manipulation/np-pd/ pip install numpy pip instal ...
- numpy、pandas学习二
#numpy中arrary与pandas中series.DataFrame区别#arrary生成数组,无索引.列名:series有索引,且仅能创建一维数组:DataFrame有索引.列名import ...
- Python【7】-数据分析准备
一.经常用到的python库: Numpy:Python科学计算的基础包: pandas:提供了能使我们快捷的处理结构化数据的大量数据结构和函数: matplotlib:用于绘制数据图表的python ...
- PimaIndiansdiabetes-数据预处理实验(一)
有趣的事,Python永远不会缺席! 如需转发,请注明出处:小婷儿的python https://www.cnblogs.com/xxtalhr/p/10859517.html 链接:https:// ...
随机推荐
- 【重构前端知识体系之HTML】HTML5给网页音频带来的变化
[重构前端知识体系之HTML]HTML5给网页音频带来的变化 引言 音乐播放,相信大家都很熟悉,但是早在之前的音乐播放之前,你的浏览器会问你,是否下载flash插件.然而现在,估计一些年轻的开发者都不 ...
- 手把手教你丨小熊派移植华为 LiteOS-M
摘要:本文详细讲解如何移植 LiteOS 到小熊派. 本文分享自华为云社区<小熊派移植华为 LiteOS-M(基于MDK)>,作者: JeckXu666. 前言 之前使用小熊派实现了鸿蒙动 ...
- Python反爬:利用js逆向和woff文件爬取猫眼电影评分信息
首先:看看运行结果效果如何! 1. 实现思路 小编基本实现思路如下: 利用js逆向模拟请求得到电影评分的页面(就是猫眼电影的评分信息并不是我们上述看到的那个页面上,应该它的实现是在一个页面上插入另外一 ...
- ApacheCN React 译文集 20211118 更新
React 入门手册 零.前言 一.React 和 UI 设计简介 二.创建组件 三.管理用户交互 React 全栈项目 零.前言 一.使用 MERN 释放 React 应用 二.准备开发环境 三.使 ...
- navicat连接mysql报错1251解决方案
感谢原文作者:XDMFC 原文链接:https://blog.csdn.net/xdmfc/article/details/80263215 问题描述 今天下了个 MySQL8.0,发现Navicat ...
- 前端常见原生方法的实现(bind,promise,new,extends,深拷贝,函数防抖,函数节流)
前端原生方法的实现,这里写一下常见的一些实现: 1.bind Function.prototype.bind2 = function (context) { var self = this; retu ...
- 使用rsync+inotify实现/www目录实时同步
一.实现bak-server 1.1安装rsync # yum -y install rsync 1.2修改配置文件 # vi /etc/rsyncd.conf #添加下面内容 uid=test gi ...
- python小白记录一 ——python脚本生成windows可执行exe
1.需要安装pywin32 先查看自己有没有安装:使用如下命令查看 pip show pywin32 如果没有则用下面方式进行安装: pip install pywin32 然后等待安装完成: 2.再 ...
- 帆软报表(finereport)图表钻取详细类别 当前页对话框展示
添加参数栏,季度下拉框的控件命名为 jd 这里添加雷达图做案例 编辑→特效→ 添加JavaScript 参数:wd 值:分类名 #取雷达图所点击的点 参数:jd 值:公式$j ...
- 框架5--nginx安装部署 下(web服务)
目录 1.提纲 2.Nginx虚拟主机 3.Nginx日志 4.Nginx访问控制模块 5.Nginx状态监控模块 6.访问连接控制模块 框架5--nginx安装部署 下(web服务) 1.提纲 1. ...