pandas.Series.plot#
- Series.plot(*args, **kwargs)[源代码]#
绘制 Series 或 DataFrame 的图。
使用
plotting.backend选项指定的后端。默认情况下,使用 matplotlib。- Parameters:
- dataSeries 或 DataFrame
调用方法的对象。
- x标签或位置,默认为 None
仅当数据是 DataFrame 时使用。
- y标签、位置或标签列表、位置列表,默认为 None
允许绘制一列与另一列的比较。仅当数据是 DataFrame 时使用。
- kindstr
要生成的图的类型:
‘line’ : 折线图 (默认)
‘bar’ : 垂直条形图
‘barh’ : 水平条形图
‘hist’ : 直方图
‘box’ : 箱线图
‘kde’ : 核密度估计图
‘density’ : 与 ‘kde’ 相同
‘area’ : 面积图
‘pie’ : 饼图
‘scatter’ : 散点图 (仅限 DataFrame)
‘hexbin’ : 六边形二元图 (仅限 DataFrame)
- axmatplotlib 轴对象,默认为 None
当前图的轴。
- subplots布尔值或可迭代对象序列,默认为 False
是否将列分组到子图中:
False: 不使用子图True: 为每列制作单独的子图。列标签的可迭代对象序列:为每组列创建一个子图。例如 [(‘a’, ‘c’), (‘b’, ‘d’)] 将创建 2 个子图:一个包含列 ‘a’ 和 ‘c’,另一个包含列 ‘b’ 和 ‘d’。未指定的剩余列将在附加子图中绘制(每个列一个)。
在 1.5.0 版本加入.
- sharexbool,如果 ax 为 None,则默认为 True;否则默认为 False
如果
subplots=True,则共享 x 轴并将一些 x 轴标签设为不可见;如果 ax 为 None,则默认为 True,否则如果传入 ax,则默认为 False;请注意,同时传入 ax 和sharex=True会改变图中所有轴的所有 x 轴标签。- shareybool,默认 False
如果
subplots=True,则共享 y 轴并将一些 y 轴标签设为不可见。- layout元组,可选
用于子图布局的(行数,列数)。
- figsize以英寸为单位的元组(宽度,高度)。
图形对象的大小。
- use_indexbool, default True
使用索引作为 x 轴的刻度。
- titlestr 或 list
用于绘图的标题。如果传入字符串,则在图形顶部打印该字符串。如果传入列表且 subplots 为 True,则在每个相应子图的上方打印列表中的每个项。
- gridbool,默认为 None(matlab 样式默认值)。
轴网格线。
- legendbool 或 {‘reverse’}
将图例放置在轴子图上。
- stylelist 或 dict
每列的 matplotlib 线条样式。
- logxbool 或 ‘sym’,默认为 False。
在 x 轴上使用对数缩放或对称对数缩放。
- logybool 或 ‘sym’,默认为 False。
在 y 轴上使用对数缩放或对称对数缩放。
- loglogbool 或 ‘sym’,默认为 False。
在 x 轴和 y 轴上都使用对数缩放或对称对数缩放。
- xtickssequence
用作 xticks 的值。
- ytickssequence
用作 yticks 的值。
- xlim2 元组/列表
设置当前轴的 x 轴限制。
- ylim2 元组/列表
设置当前轴的 y 轴限制。
- xlabel标签,可选
用作 x 轴的 xlabel 名称。默认使用索引名称作为 xlabel,或平面图的 x 列名称。
在 2.0.0 版本发生变更: 现在也适用于直方图。
- ylabel标签,可选
用作 y 轴的 ylabel 名称。默认不显示 ylabel,或平面图的 y 列名称。
在 2.0.0 版本发生变更: 现在也适用于直方图。
- rotfloat,默认 None
刻度的旋转角度(xticks 用于垂直图,yticks 用于水平图)。
- fontsizefloat,默认 None
xticks 和 yticks 的字体大小。
- colormapstr 或 matplotlib colormap 对象,默认为 None。
用于选择颜色的颜色映射。如果为字符串,则从 matplotlib 加载具有该名称的颜色映射。
- colorbarbool, optional
如果为 True,则绘制颜色条(仅适用于“散点”和“六边形图”)。
- positionfloat
为条形图布局指定相对对齐方式。从 0(左/底部端)到 1(右/顶部端)。默认为 0.5(中心)。
- tablebool、Series 或 DataFrame,默认为 False。
如果为 True,则使用 DataFrame 中的数据绘制表格,并且数据将被转置以满足 matplotlib 的默认布局。如果传入 Series 或 DataFrame,则使用传入的数据绘制表格。
- yerrDataFrame、Series、array-like、dict 和 str。
See Plotting with Error Bars for detail.
- xerrDataFrame、Series、array-like、dict 和 str。
等同于 yerr。
- stackedbool,在折线图和条形图中默认为 False,在面积图中默认为 True。
如果为 True,则创建堆叠图。
- secondary_ybool 或 sequence,默认为 False。
如果为列表/元组,是否绘制在次 y 轴上,哪些列绘制在次 y 轴上。
- mark_rightbool, default True
使用 secondary_y 轴时,在图例中标注“(right)”列名。
- include_boolbool,默认为 False。
如果为 True,则可以绘制布尔值。
- backendstr,默认 None
用于替换选项
plotting.backend中指定的后端。例如,’matplotlib’。或者,要为整个会话指定plotting.backend,请设置pd.options.plotting.backend。- **kwargs
传递给 matplotlib 绘图方法的选项。
- Returns:
matplotlib.axes.Axes或它们的 numpy.ndarray。如果后端不是默认的 matplotlib 后端,返回值将是后端返回的对象。
Notes
有关此主题的更多信息,请参阅 matplotlib 在线文档。
如果 kind`=’bar’ 或 ‘barh’,您可以通过 `position 关键字为条形图布局指定相对对齐方式。从 0(左/底部端)到 1(右/顶部端)。默认为 0.5(中心)。
Examples
对于 Series:
>>> ser = pd.Series([1, 2, 3, 3]) >>> plot = ser.plot(kind='hist', title="My plot")
对于 DataFrame:
>>> df = pd.DataFrame({'length': [1.5, 0.5, 1.2, 0.9, 3], ... 'width': [0.7, 0.2, 0.15, 0.2, 1.1]}, ... index=['pig', 'rabbit', 'duck', 'chicken', 'horse']) >>> plot = df.plot(title="DataFrame Plot")
对于 SeriesGroupBy:
>>> lst = [-1, -2, -3, 1, 2, 3] >>> ser = pd.Series([1, 2, 2, 4, 6, 6], index=lst) >>> plot = ser.groupby(lambda x: x > 0).plot(title="SeriesGroupBy Plot")
对于 DataFrameGroupBy:
>>> df = pd.DataFrame({"col1" : [1, 2, 3, 4], ... "col2" : ["A", "B", "A", "B"]}) >>> plot = df.groupby("col2").plot(kind="bar", title="DataFrameGroupBy Plot")