欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

matplotlib官方文档整理

程序员文章站 2022-03-01 21:03:57
...

概述

bar、barh、plot -->柱状图、水平条形图、折线图等
xticks与yticks -->设置坐标轴刻度
xlabel与ylabel -->设置坐标轴标签)
title -->标题
legend -->图例
xlim与ylim -->设置坐标轴数据范围
grid -->设置网格线等命令来装饰图形

官方文档

https://matplotlib.org/api/_as_gen/matplotlib.pyplot.html#module-matplotlib.pyplot

绘制图例

plt.figure

figure图形图标的意思,这里指我们绘制的图

matplotlib.pyplot.figure(num = None,figsize = None,dpi = None,facecolor = None,edgecolor = None,frameon = True,FigureClass = <class'matplotlib.figure.Figure'>,clear = False,** kwargs )


num : 整数或字符串,可选,默认值:无
如果未提供,将创建新图形,图形编号将递增。图形对象将此数字保存在number 属性中。如果提供了num,并且已存在具有此id的数字,请将其设置为活动状态,并返回对它的引用。如果此图不存在,请创建它并返回它。如果num是一个字符串,则窗口标题将设置为此图 num。

figsize :( float,float),可选,默认值:无
宽度,高度(英寸)。如果未提供,则默认为 rcParams["figure.figsize"]= 。[6.4, 4.8]

dpi : 整数,可选,默认值:无
这个数字的分辨率。如果未提供,则默认为 rcParams["figure.dpi"]= 100。

facecolor:
背景颜色。如果未提供,则默认为 rcParams["figure.facecolor"]= 'w'。

edgecolor:
边框颜色。如果未提供,则默认为 rcParams["figure.edgecolor"]= 'w'。

frameon : bool,optional,默认值:True
如果为False,则禁止绘制图框。

FigureClass :的 子类Figure
(可选)使用自定义Figure实例。

clear : bool,可选,默认值:False
如果为True并且该图已经存在,那么它将被清除。

plt.subplot(a,b,c)

在当前图中添加子图

matplotlib.pyplot.subplot(* args,** kwargs )

plt.subplot(221)
ax1=plt.subplot(2, 2, 1)

a:上下分几块
b:左右分几块
c:a*b子图的位置

绘制直方图,条形图,折线图

plt.plot

绘制x,y作为线或者标志

matplotlib.pyplot.plot(* args,scalex = True,scaley = True,data = None,** kwargs )

plot([x], y, [fmt], [x2], y2, [fmt2], ..., **kwargs)

x,y:数组或者标量
数据点的水平/垂直坐标。 x值是可选的。如果没有给出,则默认为 。[0, ..., N-1]

fmt:str 可选
格式字符串,例如红色圆圈的“ro”
格式字符串只是快速设置基本行属性的缩写。所有这些以及更多也可以通过关键字参数来控制。

data:可索引对象,可选
带有标记数据的对象。如果给定,请提供标签名称以x和y绘制。


fmt

格式
fmt = '[color][marker][line]'
每个都是可选的。如果未提供,则使用样式循环中的值。例外:如果line给定但不是marker,则数据将是没有标记的行。

颜色
支持以下颜色缩写:
字符	颜色
'b'	蓝色
'g'	绿色
'r'	红色
'c'	青色
'm'	品红
'y'	黄色
'k'	黑色
'w'	白色

如果颜色是格式字符串的唯一部分,则可以另外使用任何matplotlib.colors规范,例如全名('green')或十六进制字符串('#008000')


标记
字符	描述
'.'	点标记
','	像素标记
'o'	圆圈标记
'v'	triangle_down标记
'^'	triangle_up标记
'<'	triangle_left标记
'>'	triangle_right标记
'1'	tri_down标记
'2'	tri_up标记
'3'	tri_left标记
'4'	tri_right标记
's'	方形标记
'p'	五边形标记
'*'	明星标记
'h'	hexagon1标记
'H'	hexagon2标记
'+'	加上标记
'x'	x标记
'D'	钻石标记
'd'	thin_diamond标记
'|'	vline标记
'_'	hline标记

线条样式

字符	描述
'-'	实线风格
'--'	虚线样式
'-.'	点划线样式
':'	虚线样式

示例格式字符串:
'b'    # blue markers with default shape
'ro'   # red circles
'g-'   # green solid line
'--'   # dashed line with default color
'k^:'  # black triangle_up markers connected by a dotted line





plt.bar

绘制直方图

matplotlib.pyplot.bar(x, height, width=0.8, bottom=None, *, align='center', data=None, **kwargs)[source]

x:条形的x坐标(值是显示有多少个柱状图,使用range(len(x))来设置比较好)
height:条的高度
width:条形的宽度(默认值:0.8)
bottom:条形基座的y坐标(默认值:0)
align:条形对齐x坐标.可选参数值(center,edge) 对齐的是x刻度(edge参数值是将柱状图的左边界与刻度对齐)

plt.barn

绘制条形图

matplotlib.pyplot.barh(y,width,height = 0.8,left = None,*,align ='center',** kwargs )
y:标量或者数组
条形的y坐标

width:标量或数组 条的宽度
height : 标量序列,可选,默认值:0.8 条的高度
left:条形左侧的x坐标(默认值:0)
align : {'center','edge'},可选,默认:'center'

图中设置添加属性

plt.text

matplotlib.pyplot.text(x, y, s, fontdict=None, withdash=False, **kwargs)
x,y:标量
放置文本的位置。默认情况下,这是数据坐标。可以使用transform参数更改坐标系 。

s : str
文本。

fontdict : 字典,可选,默认值:无
用于覆盖默认文本属性的字典。如果fontdict为None,则默认值由rc参数确定。

withdash : boolean,optional,默认值:False
创建TextWithDash实例而不是 Text实例。

plt.legend()

为线条添加图例

matplotlib.pyplot.legend(* args,** kwargs )
可以传参可以不传参

legend()
legend(labels)
legend(handles, labels)

可以在设置bar,barh时候传入label参数

其他参数:
loc:位置参数
位置字符串	位置代码
'最好'	0
'右上方'	1
'左上'	2
'左下'	3
'右下'	4
'对'	五
'中间左'	6
'中右'	7
'下中心'	8
'上中心'	9
'*'	10

https://matplotlib.org/api/_as_gen/matplotlib.pyplot.legend.html#matplotlib.pyplot.legend

plt.title

设置轴的标题
设置三个可用轴标题之一。可用标题位于中心轴上方,与左边齐平,与右边齐平。

matplotlib.pyplot.title(label,fontdict = None,loc ='center',pad = None,** kwargs )

label:str 用于标题的文本
fontdict:dict
控制标题文本外观的字典,默认fontdict为:
{'fontsize': rcParams['axes.titlesize'],
 'fontweight' : rcParams['axes.titleweight'],
 'verticalalignment': 'baseline',
 'horizontalalignment': loc}
 
 loc : {'center','left','right'},str,optional
要设置的标题,默认为“中心”
 
pad : 浮动
标题从轴顶部的偏移量,以磅为单位。默认是None使用rcParams ['axes.titlepad']。

 https://matplotlib.org/api/_as_gen/matplotlib.pyplot.title.html#matplotlib.pyplot.title

plt.xlabel

设置x轴的标签

matplotlib.pyplot.xlabel(xlabel,fontdict = None,labelpad = None,** kwargs )
xlabel:标签文字
labelpad:标签与x轴之间的点间距
** kwargs : Text属性
Text 属性控制标签的外观。

https://matplotlib.org/api/_as_gen/matplotlib.pyplot.xlabel.html#matplotlib.pyplot.xlabel

plt.ylabel

与plt.xlabel同理

plt.xticks

获取或设置当前刻度线位置和x轴标签。

matplotlib.pyplot.xticks(ticks = None,labels = None,** kwargs )

ticks : array_like
应该放置刻度的位置列表。您可以传递一个空列表来禁用xticks。
labels : array_like,可选
要放置在给定位置的显式标签列表。
** kwargs
Text 属性可用于控制标签的外观。


plt.xticks(ind, ('G1', 'G2', 'G3', 'G4', 'G5'))  -->设置x的刻度
ind:可以理解为bar中第一个参数(x轴有几个)
plt.xticks(x[::2]) ->当刻度太密集的时候使用`列表的步长(间隔取值)来解决,matplotlib会自动帮我们对应`

https://matplotlib.org/api/_as_gen/matplotlib.pyplot.xticks.html#matplotlib.pyplot.xticks


plt.yticks

同上

限制坐标轴

plt.xlim

限制坐标轴和plt.axis同样道理

plt.xlim(0,7)
plt.ylim(-0.5,4)
plt.axis([0,7,-0.5,4])

plt.ylim

plt.axis

matplotlib.pyplot.axis(*v, **kwargs)[source]¶
xmin, xmax, ymin, ymax = axis(xmin, xmax, ymin, ymax)
要设置的轴限制。必须给出所有限制或全部限制。
axis功能是限制x,y坐标的最小最大值

例如:plt.axis([-1, 2, -1, 2])