Pandas教程-Pandas绘图
Pandas绘图用于使用matplotlib/pylab制作DataFrame的图表。每种绘图类型在DataFrame.plot访问器上都有对应的方法:df.plot(kind='line')
,通常等同于df.plot.line()
。
语法:
DataFrame.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, xticks=None, yticks=None, xlim=None, ylim=None, rot=None, fontsize=None, colormap=None, table=False, yerr=None, xerr=None, secondary_y=False, sort_columns=False, **kwds)
参数:
data: DataFrame
x: 表示标签或位置,默认值为None。
y: 表示标签、位置或标签位置列表,默认值为None。
它允许绘制一列与另一列的图表。
kind: str
- 'line': 折线图(默认)
- 'bar': 垂直条形图
- 'barh': 水平条形图
- 'hist': 直方图
- 'box': 箱线图
- 'kde': 核密度估计图
- 'density': 与 'kde' 相同
- 'area': 面积图
- 'pie': 饼图
- 'scatter': 散点图
- 'hexbin': 六边形图
ax: matplotlib axes 对象,默认为None。
subplots: 布尔值,默认为False。
为每一列创建单独的子图。
sharex: 返回布尔值,默认值为True(如果ax为None)。
如果subplots=True,它共享x轴并将一些x轴标签设置为不可见;
如果ax被传递,它返回False。如果在ax和shareax上都传递True,它将改变所有x轴标签。
sharey: 返回布尔值,默认值为False。
如果subplots=True,它共享y轴并将一些y轴标签设置为不可见。
layout: 可选参数,指定子图的布局元组。
figsize: 元组(宽度,高度)以英寸为单位。
use_index: 返回布尔值,默认值为True。
它使用索引作为x轴的刻度。
title: 字符串或列表,定义图表的标题。如果传递字符串,它将在图的顶部打印字符串。如果传递列表且subplots为True,它将在相应的子图中打印列表中的每个项。
grid: 返回布尔值,默认值为None。它定义坐标轴网格线。
legend: 返回False/True/'reverse',并将图例放置在坐标轴的子图上。
style: 返回列表或字典。它定义每列的matplotlib线样式。
logx: 返回布尔值,默认值为False。
通常在x轴上使用对数刻度。
logy: 返回布尔值,默认值为False。
通常在y轴上使用对数缩放。
loglog: 返回布尔值,默认值为False。
在x轴和y轴上通常使用对数缩放。
xticks: 包含用于x轴刻度的值的序列。
yticks: 包含用于y轴刻度的值的序列。
xlim: 包含2个元素的元组/列表。
ylim: 包含2个元素的元组/列表。
rot: 整数值,默认值为None。
通常旋转刻度(垂直图的xticks,水平图的yticks)。
fontsize: 整数值,默认值为None。
其主要任务是指定xticks和yticks的字体大小。
colormap: 字符串或matplotlib colormap 对象,默认值为None。
它提供选择颜色的colormap。如果值是字符串,则从matplotlib加载具有该名称的colormap。
colorbar: 可选参数,返回布尔值。
如果值为True,它绘制颜色条(仅对于'scatter'和'hexbin'图有关)
position: 浮点值。
其主要任务是指定条形图布局的相对对齐。其值范围从0(左/底部端)到1(右/顶部端)。默认值为0.5(中心)。
table: 返回布尔值、Series或DataFrame,默认值为False。
如果值为True,它使用DataFrame中的数据绘制表格。
如果传递Series或DataFrame,它将传递数据以绘制表格。
yerr: DataFrame、Series、类似数组、字典和字符串。
xerr: 与yerr类型相同。
stacked: 返回布尔值;在线和条形图中的默认值为False,面积图中为True。如果值为True,它将创建堆叠图。
sort_columns: 返回布尔值;默认值为False
它按列名对绘图顺序进行排序。
secondary_y: 返回布尔值或序列;默认值为False。
它检查是否在辅助y轴上绘图。如果是列表/元组,它将在辅助y轴上绘制列表/元组的列。
mark_right: 返回布尔值;默认值为True。
在使用辅助y轴时,自动在图例中标记列标签为“(right)”。
'**kwds': 可选参数,指定传递给matplotlib绘图方法的选项。
示例:
# import libraries
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
p = pd.Series(np.random.randn(2000), index = pd.date_range(
'2/2/2000', periods = 2000))
p = ts.cumsum()
p.plot()
plt.show()
输出: